在haystack中基于Model分类结果?

时间:2015-11-24 07:38:56

标签: python django full-text-search django-haystack whoosh

当我们使用 django-haystack 提供的 SearchQuerySet API 进行搜索时,结果是一个包含所有索引中模型实例对象的列表。

现在对于后期计算,我想根据获取它们的模型对搜索结果进行分类。

通常我会做这样的事情

from haystack.query import SearchQuerySet
hello_results = SearchQuerySet().filter(content='hello')

我可以遍历模型列表并使用 .models()来专门使用单个索引进行查询。 但我认为这种方法会慢得多,因为必须执行多次搜索。

有没有更好的方法来实现同样的目标。

编辑:

我的意思是:

假设有两个模型A和B,

现在通过某种方式我想知道哪个结果是从模型A中获取的,哪些是从模型B中获取的。

1 个答案:

答案 0 :(得分:1)

每个结果都有一个属性model_name。因此,您可以在视图中使用groupby,或在搜索结果模板中循环搜索结果时查看result.model_name