Джанго-Хейстек: Как ограничить поиск в записях, которые имеют конкретное значение для данного поля?
Скажи у меня есть модель Person
для которого есть PersonIndex
класс в search_indexes.py
что делает все поля этого поиска доступными. Как я могу сделать поиск только в тех записях, где говорят has_title
поле True
?
Я попробовал следующее, но он просто ищет среди всех записей, а не только те, где has_title
является True
:
srch = request.GET.get('search', "")
sqs = SearchQuerySet().filter(has_title=True)
clean_query = sqs.query.clean(srch)
results = sqs.raw_search(clean_query)
я использую Whoosh 2.4.1
, Django-haystack 1.2.7
а также Django 1.4
,
1 ответ
Решение
Использование filter(content=clean_query)
вместо raw_search(clean_query)
, Смотрите здесь для более подробной информации.