У меня есть поиск в стоге сена, который имеет следующий SearchIndex:
class GrantIndex(indexes.SearchIndex): """ This provides the search index for the Grant application. """ text = indexes.CharField(document=True, use_template=True) year = indexes.IntegerField(model_attr='year__year') date = indexes.DateField(model_attr='date') program = indexes.CharField(model_attr='program__area') grantee = indexes.CharField(model_attr='grantee') amount = indexes.IntegerField(model_attr='amount') site.register(Grant, GrantIndex)
Если я хочу выполнить поиск, отфильтровав любые программы, НЕ ЯВЛЯЮЩИЕСЯ «Здоровьем», я запускаю следующий запрос:
from haystack.query import SearchQuerySet sqs = SearchQuerySet() sqs = sqs.filter(program='Health')
К сожалению, при этом также создаются объекты из программы "Здоровье\Другое" и "Здоровье\Сердечно-сосудистые заболевания". Как мне запретить поиску допускать эти другие программы?
Я запускаю Ubuntu 9.10 с Xapian в качестве своего поискового сервера.