Haystack Whoosh Правописание Предложение слишком жадный

Этот вопрос о Django Haystack с бэкэндом Whoosh. Я хотел бы использовать предложение правописания в моем поиске. Проблема в том, что он предлагает слишком много.

Скажем, у меня есть две модели: яблоки и апельсины.

Если у меня есть что-то вроде этого:

result = SearchQuerySet().models(Apples).filter(
    content=escaped_value).spelling_suggestion(escaped_value)

на самом деле он посмотрит на модель апельсинов и вернет вам правописание! Вроде как у моделей (яблок) ограничение не работает.

У меня есть настройки индексов для обеих моделей, с атрибутом "текст" как document=True. Мое правописание включено. Я использую Whoosh в качестве бэкэнда.

1 ответ

Решение

Это проблема, потому что Haystack создает предложения правописания на основе полей, которые имеют document = True (которые в моем случае являются основным полем поиска во всех моделях и имеют одинаковое имя). Таким образом, он не заботится о моделях вообще и всегда выполняет поиск по всей базе знаний.

Я подал проблему в стог сена и поднял ее на доске обсуждений. Dev очень полезен: http://groups.google.com/group/django-haystack/browse_thread/thread/025e5ed42ccde8b9

Проблема: http://github.com/toastdriven/django-haystack/issues/

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