在我的solrconfig.xml中,我指定mm为100%,使用多个术语进行搜索,仍显示仅与某些搜索字词匹配的结果。如果我在每个术语前面明确地加上+,就会实现所需的行为,但由于显而易见的原因,我不希望用户必须输入+。
另外,我尝试了mm参数的几种变体,但它们似乎都没有达到我想要的效果。以下是整个请求处理程序:
<requestHandler name="dismax" class="solr.SearchHandler" >
<lst name="defaults">
<str name="defType">dismax</str>
<str name="echoParams">explicit</str>
<float name="tie">0.01</float>
<str name="qf">
body^0.5 subject^3.0 from^10.0 to^7.0
</str>
<str name="mm">
100%
</str>
<int name="ps">100</int>
<str name="q.alt">*:*</str>
</lst>
</requestHandler>
我做错了什么?
答案 0 :(得分:2)
我已经回答了我自己的问题。上面的xml配置很好。我正在将一个boost参数传递给类似
的查询{!boost b=<some boost>}
这导致dismax处理程序以不同方式解析查询,从而忽略mm。