我收到此错误NoMethodError: undefined method 'any' for #<Sunspot::DSL::Search:0x000000037a8070>
当我尝试按照文档进行操作时。 https://github.com/sunspot/sunspot#disjunctions-and-conjunctions
Post.search do
any do
fulltext "keyword1", :fields => :title
fulltext "keyword2", :fields => :body
end
end
我正在使用最新版本的黑子
2.1.1
。我在架构XML中使用
defaultOperator="OR"
,并且我希望将两个结果都进行AND处理。如果我可以使用
AND
在两个查询之间添加adjust_solr_params
但它有很多条件,例如增强精确匹配和其他部分,检查到特定的文本字段,则可以使用。我想通过完全匹配来提高记录的质量,它也应该给出ngram结果。
因此,由于与完全匹配的结果进行AND运算,因此当前ngram结果无法提供。任何建议,我怎么能做到这一点。
最佳答案
根据此issue,在2.1.1版本发布后,全部添加。
您的版本的文档没有以下方法:https://github.com/sunspot/sunspot/tree/v2.1.1
因此,为了使用所有|您应该使用边缘版本或等待下一个版本。
关于ruby-on-rails - 黑子的合取和析取不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27549779/