根据干草堆中的模型对结果进行分类?
Categorize results based on Model in haystack?
当我们使用 SearchQuerySet API 提供的 django-haystack 搜索时,结果是一个包含模型对象的列表所有索引中的实例。
现在,对于 post 计算,我想根据从中获取结果的模型对搜索结果进行分类。
通常我会这样做
from haystack.query import SearchQuerySet
hello_results = SearchQuerySet().filter(content='hello')
我可以遍历模型列表并使用 .models() 专门使用单个索引进行查询。
但我认为这种方法会慢得多,因为必须执行多次搜索。
有没有更好的方法来完成同样的事情。
编辑:
我的意思是:
假设有两个模型 A 和 B,
现在通过某种方式我想知道哪些结果是从模型 A 中获取的,哪些是从模型 B 中获取的。
每个结果都有一个属性model_name
。因此,您可以在视图中使用 groupby,或者在搜索结果模板中循环遍历结果时选中 result.model_name
。
当我们使用 SearchQuerySet API 提供的 django-haystack 搜索时,结果是一个包含模型对象的列表所有索引中的实例。
现在,对于 post 计算,我想根据从中获取结果的模型对搜索结果进行分类。
通常我会这样做
from haystack.query import SearchQuerySet
hello_results = SearchQuerySet().filter(content='hello')
我可以遍历模型列表并使用 .models() 专门使用单个索引进行查询。 但我认为这种方法会慢得多,因为必须执行多次搜索。
有没有更好的方法来完成同样的事情。
编辑:
我的意思是:
假设有两个模型 A 和 B,
现在通过某种方式我想知道哪些结果是从模型 A 中获取的,哪些是从模型 B 中获取的。
每个结果都有一个属性model_name
。因此,您可以在视图中使用 groupby,或者在搜索结果模板中循环遍历结果时选中 result.model_name
。