在Django Haystack的SearchQuerySet中过滤空白CharField

时间:2016-06-02 01:39:53

标签: python django django-haystack whoosh

我需要返回SearchQuerySet中的所有条目,其中某个CharField为空,即空字符串。

在我的search_indexes.py中,我有:

sometext = indexes.CharField(model_attr='sometext')

我尝试使用通常的SQS语法进行过滤:

SearchQuerySet().filter(sometext__exact='')
SearchQuerySet().filter(sometext__in=['', None])

不返回空白条目。第一个返回所有条目,第二个返回none。

我在SearchIndex定义中遗漏了什么?有没有什么办法可以使用Whoosh后端在Haystack中完成?

2 个答案:

答案 0 :(得分:0)

试试这个,它对我有用:

from haystack.inputs import Raw
r = SearchQuerySet()
r.exclude(sometext=Raw('*'))

答案 1 :(得分:-1)

你可以这样做:

    SomeQuerySet().filter(sometext='')