我是Haystack和搜索领域的新手,所以我不知道如何提出这个问题。
我想要实现的目标如下。
有一个搜索查询,如:一二
我想返回任何内容,例如:
Haystack + solr / xapian可以实现吗? 也有可能与结果有关联吗?在两个单词被击中的情况下,这将给我更多相关性。
我目前在我的视图中使用SearchQuerySet但无法实现。
干杯
答案 0 :(得分:1)
所以你基本上正在寻找OR
类型的查询吗?默认情况下,haystack使用AND
操作来加入查询。
你可以这两种方式:
HAYSTACK_DEFAULT_OPERATOR
更改为OR
。这显然是整个网站的变化。SearchQuerySet
表单以使用filter_or,这将强制OR
样式查找。所以将新的一个传递到您的表单/视图中:SearchQuerySet.filter_or(**kwargs)
除此之外,您可以随时加入Django Q
个对象,但考虑到您有这些选项,这些可能是您最好的选择。
要获得相关性,您应该阅读使用搜索模板的Best Practices页面,并将其作为展示相关内容的方式。
希望有所帮助!