Puedo entrar en mi caparazón y escribir
sqs = SearchQuerySet().filter(content='content') len(sqs)y obtengo resultados. Los he inspeccionado y cuando escribo
sqs[0] sqs[0].id sqs[0].textObtengo resultados coherentes. Sin embargo, cuando uso el formulario de búsqueda en mi sitio web, no obtengo resultados.
Ni siquiera defino mi propio SearchView. Es el predeterminado. En la plantilla, he probado
{% for result in page.object_list %} {% for result in object_list %} {% for result in page_obj.object_list %}y aun asi no obtengo ningun resultado. Y la consulta se ejecutó porque puedo poner cosas dentro
{% if query %}así que claramente funciona. ¿Qué debo hacer?
Gracias.
Resolví esto reemplazando
url(r'^search/', include('haystack.urls')),con
url(r'^search/?$', views.SearchResultsView.as_view(), name='search-view'),y haciendo mi propio SearchResultsView sin nada especial en él
class SearchResultsView(SearchView): template_name = 'search/search.html' form_class = MySearchForm queryset = SearchQuerySet().all() paginate_by = 10 context_object_name = 'object_list'y usando
page_objen la plantilla