当我有多个匹配的字段时,分数不会增加。
我的搜索方法:

search_results = Subscription.search(
        params[:query], # The search query ("martin" in my example)
        fields: Admin::GlobalSearch.boosts, # An array like ["prénom^3","nom^3.5","email^1.5"]
        operator: "or",
        load: false,
        highlight: true,
        limit: 5,
        misspellings: {below: 5})
我对“马丁”的搜索结果(您的得分正确):
ruby-on-rails - Searchkick-与多个字段匹配的得分-LMLPHP
我的结果是“vincent martin”(您的得分正确):
ruby-on-rails - Searchkick-与多个字段匹配的得分-LMLPHP
逻辑上,我想在我的第二次搜索“文森特·马丁”的人中,名叫的人Vincent Martin 的得分更高。但是他是一样的。一个想法 ?
谢谢

最佳答案

您可以使用explain选项来调试评分:

Subscription.search(params[:query], explain: true, ...).response

https://github.com/ankane/searchkick#debugging-queries

关于ruby-on-rails - Searchkick-与多个字段匹配的得分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51554411/

10-10 19:17