Django Haystack SearchQuerySet order_by не возвращает результатов

У меня есть Haystack, работающий в "Old urls.py" ниже. Когда я пытаюсь упорядочить результаты поиска с помощью order_by в поле модели 'canonical_school_score', как показано в "New urls.py", я не получаю результатов поиска. Любые предложения о том, что я делаю не так?

# Old urls.py
    urlpatterns = patterns('',
        url(r'^search/', include('haystack.urls')),
    )

# New urls.py
    from haystack.views import search_view_factory, SearchView
    from haystack.query import SearchQuerySet
    sqs = SearchQuerySet().order_by('-canonical_school_score')

    urlpatterns = patterns('',        
        url(r'^search/', search_view_factory(
            view_class=SearchView,
            template='search/search.html',
            searchqueryset=sqs
        ), name='haystack_search'),
    )

1 ответ

Таким образом, проблема заключалась в том, что canonical_school_score, хотя и являлось полем модели, не было частью поискового индекса search_indexes.py.

Имеет смысл в ретроспективе. Надеюсь, это поможет другим не повторить ту же ошибку.

Другие вопросы по тегам