django-haystack: как получить доступ к подсказкам правописания на шаблоне? - PullRequest
0 голосов
/ 01 мая 2010

Я пытаюсь использовать django-haystack с помощью Solr и HAYSTACK_INCLUDE_SPELLING = True.

Как получить доступ к орфографическим подсказкам на шаблоне (сгенерированным по умолчанию SearchView)?

Редактировать: другой вопрос: Может ли Правописание найти слова из базы данных?Например, при использовании модели Note по умолчанию из документа haystack и SearchView по умолчанию предложения поиска орфографии при поиске слова «Lorm» отсутствуют, когда в базе данных содержится заметка «Lorem ipsum».Это нормально?

Спасибо: -)

Ответы [ 2 ]

5 голосов
/ 02 мая 2010

Если в шаблоне установлен поисковый запрос, вы можете сделать:

{{ sqs.spelling_suggestion }}

Посмотрите на: http://docs.haystacksearch.org/dev/searchqueryset_api.html#spelling-suggestion

для более подробной информации.

Чтобы в стоге сена найти варианты написания, шаблон поиска должен содержать искомое поле. Так что, если вы ищете шаблон, включающий {{object.title}}, вам следует выбрать орфографическое предложение.

Может быть, вы забыли сделать

python manage.py update_index

после того, как вы добавили примечание Lorem.

1 голос
/ 22 марта 2011

{{ suggestion }} должно быть достаточно, если вы используете значение по умолчанию SearchView.

См:

https://github.com/toastdriven/django-haystack/blob/master/haystack/views.py#L118

... чтобы увидеть, что доступно в контексте шаблона.

Хассан прав, утверждая, что вы должны обновить / перестроить свой индекс и что вам нужны правильные поля в шаблоне поиска.

...