小编Sal*_*ala的帖子

Django haystack SearchQuerySet to QuerySet

我有一个非常通用的视图/模板来显示给定模型的查询集的内容.
我使用12个地方有12个不同的查询集,现在我想在那里集成haystack搜索,但我不能,因为SearchQuerySet与模板中的QuerySet不匹配.

使用正常的查询集我做

{%for obj in qs%}
    {{obj.foreign_key.name }}
{%endfor%}
Run Code Online (Sandbox Code Playgroud)

使用SearchQuerySet我需要做

{%for obj in qs%} 
   {{obj.object.foreign_key.name}}
{%endfor%}
Run Code Online (Sandbox Code Playgroud)

这基本上打破了我的通用模板和视图,现在知道查询集的来源.

我想要一种方法让searchqueryset像普通的查询集一样,我知道:

  • 我会失去分数,虽然我会保留命令
  • 我需要做一个load_all()来获取整个对象

有关如何保持模板通用但接受SearchQuerySet或将SearchQuerySet转换为QuerySet的任何提示?

django solr django-queryset django-haystack

5
推荐指数
2
解决办法
3527
查看次数

标签 统计

django ×1

django-haystack ×1

django-queryset ×1

solr ×1