【问题标题】:Categorize results based on Model in haystack?根据大海捞针中的模型对结果进行分类?
【发布时间】:2016-02-26 13:16:46
【问题描述】:

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

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

通常我会做这样的事情

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

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

有没有更好的方法来完成同样的事情。

编辑:

我的意思是:

假设有两个模型 A 和 B,

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

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-30
      • 2011-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-17
      • 2020-01-07
      相关资源
      最近更新 更多