İnternette alıştırma dökümantasyonunu ve diğer birkaç örneği okudum.Django Haystack aramasında sonuç bulunamadı
from haystack.indexes import *
from haystack import site
from models import Entry
class EntryIndex(SearchIndex):
text = CharField(document=True)
headline = CharField(model_attr='headline')
subheadline = CharField(model_attr='subheadline')
category = CharField(model_attr='category__name')
author = CharField(model_attr='get_author')
email = CharField(model_attr='get_email')
tags = CharField(model_attr='tags')
content = CharField(model_attr='content')
def get_queryset(self):
return Entry.objects.exclude(dt_published=None).order_by('-is_featured', '-dt_published', '-dt_written', 'headline')
site.register(Entry, EntryIndex)
Ama arama yaparken, hiçbir sonuç alın: Ve bu benim search_indexes.py neye benzediği. Garip bir şekilde, 'a' ya da herhangi bir başka harf, 'u kullanırsam, lanet şeydeki her girişe benzeyen bir şey bulurum.
Her neyse ... Bana arama motorunun herhangi bir alana bakmadığı gibi görünüyor. Bu çizginin altına
şey daha az alakalı olduğunu
/(Çalışır, bana güven):Bence:
from haystack.views import SearchView
class CustomSearchView(SearchView):
def __name__(self):
return "CustomSearchView"
def extra_context(self):
return common(self.request)
def search(request):
return CustomSearchView(template='news/search_results.html')(request)
Ve search_results.html:
{% extends "content.html" %}
{% load tagging_tags %}
{% load highlight %}
{% block title %}Viðskiptablaðið - Leitarniðurstöður{% endblock %}
{% block left_content %}
<h2>Search</h2>
<form method="get">
<table>
{{ form.as_table }}
<tr>
<td> </td>
<td>
<input type="submit" value="Search">
</td>
</tr>
</table>
{% if query %}
<h3>Results</h3>
{% for result in page.object_list %}
{% highlight result.summary with request.GET.q %}
{% highlight result.object.headline with request.GET.q %}
<p>
<a href="{{ result.object.get_absolute_url }}">{{ result.object.headline }}</a>
</p>
{% empty %}
<p>No results found.</p>
{% endfor %}
{% if page.has_previous or page.has_next %}
<div>
{% if page.has_previous %}<a href="?q={{ query }}&page={{ page.previous_page_number }}">{% endif %}« Previous{% if page.has_previous %}</a>{% endif %}
|
{% if page.has_next %}<a href="?q={{ query }}&page={{ page.next_page_number }}">{% endif %}Next »{% if page.has_next %}</a>{% endif %}
</div>
{% endif %}
{% else %}
{# Show some example queries to run, maybe query syntax, something else? #}
{% endif %}
</form>
{% endblock %}
Hangi arama motorunu kullanıyorsunuz? Örneğin Solr ise, bu alanları kullanmak için doğru şekilde yapılandırdınız mı? –