我有以下SearchIndex:
class ProductIndex(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True)
display_name = indexes.CharField(model_attr='display_name')
link = indexes.CharField(model_attr='link')
def get_model(self):
return Product
def index_queryset(self, using=None):
"""Used when the entire index for model is updated."""
return self.get_model().objects.\
filter(last_updated__lte=datetime.datetime.now())
它适用于以下查询:
>>>> SearchQuerySet().filter(display_name='Levis jeans')
[<SearchResult ... >, <SearchResult ... >, ...]
但是当我使用任何内容过滤器时,它会返回空列表:
>>>> SearchQuerySet().filter(content='Levis jeans')
[]
有什么问题?
此外,还没有text
字段的solr文档。
答案 0 :(得分:0)
解决方案:为use_template=True
字段设置text
。 Haystack使用django-templates为搜索引擎呈现文档。