Я использую solr для поиска набора данных по имени (например, «Дэн» или «Джо Смит»). Я хотел бы вернуть результаты, указанные в запросе (edit: с подстановочным знаком в конце) в порядке, указанном другим индексированным полем double_score (например, 10.0 или 72.3). В настоящее время у меня есть следующее, которое не работает вообще:
<!-- Note that the default search is on the field name -->
<requestHandler name="/scoresearch" class="solr.SearchHandler" default="true">
<!-- <lst name="invariants">
<str name="q">{!boost b=sum(double_score) defType=dismax v=$qq}</str>
</lst> -->
<lst name="defaults">
<str name="defType">dismax</str>
<str name="echoParams">explicit</str>
<int name="rows">10</int>
<!-- <str name="qq"></str> -->
<str name="qf">double_score</str>
<str name="debug">true</str>
<str name="q.alt">*:*</str>
</lst>
</requestHandler>
Если я удалю комментарии, то поиск сработает. любой запрос, который я делаю, заменяется на q.alt, а затем усиливается значением double_score. Если это не заменит q.alt, это будет желаемый эффект.
Также обратите внимание, что, хотя я еще не углубился в более интересные возможности, такие как маркировка имен, я планирую сделать это. Таким образом, любое возможное предложение / решение не должно исключать этого.