Tengo una búsqueda pajar que tiene la siguiente SearchIndex:Django Haystack exacta filtrado
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)
si quiero buscar la filtración de todos los programas que no son 'Salud', corro la siguiente consulta:
from haystack.query import SearchQuerySet sqs = SearchQuerySet() sqs = sqs.filter(program='Health')
Desafortunadamente, esto también produce objetos del programa 'Health \ Other' y 'Health \ Cardiovascular'. ¿Cómo impido que la búsqueda permita que entren esos otros programas?
Ejecuto Ubuntu 9.10 con Xapian como mi buscador de back-end.
filtro (programa = "Salud") y filtro (program__exact = "Salud") son los mismos de acuerdo con la documentación y en la práctica. – blackrobot