如何解决Solr 建议器 - 在Suggest.cfq 中查找子字符串
我正在实现一个 Solr 请求处理程序来创建一个建议者。
作为 contextField
,我使用的字段可以包含多个值,如果 suggest.cfq
参数匹配这些值中的至少一个或一部分,我希望能够搜索建议。
<requestHandler name="/searchSuggester" class="solr.SearchHandler" startup="lazy">
<lst name="defaults">
<str name="suggest">true</str>
<str name="suggest.count">10</str>
<str name="suggest.dictionary">suggesterdisctionary</str>
<!-- str name="highlight">false</str -->
<!-- str name="suggest.cfq">UNCOMMNET_FOR_DEBUG</str -->
</lst>
<arr name="components">
<str>suggest</str>
</arr>
</requestHandler>
<searchComponent name="suggest" class="solr.SuggestComponent">
<lst name="suggester">
<str name="name">suggesterdisctionary</str>
<str name="lookupImpl">AnalyzingInfixLookupFactory</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">test_all</str>
<str name="contextField">multiple_suggest</str>
<str name="suggestAnalyzerFieldType">text_general</str>
<str name="buildOnStartup">false</str>
</lst>
</searchComponent>
在不使用 suggest.cfq
参数的情况下寻找通用建议
http://HOST:8983/solr/COLLECTION/searchSuggester?suggest.q=my_word
但是我如何添加 suggest.cfq
以匹配例如任何值? (这只是为了调试)
并匹配包含在我的 multiple_suggest 多值字段中的特定字符串?
我试过了
http://HOST:8983/solr/COLLECTION/searchSuggester?suggest.q=my_word&suggest.cfq=*
和
http://HOST:8983/solr/COLLECTION/searchSuggester?suggest.q=my_word&suggest.cfq=*sub*
但第一个返回错误 "msg": "Failed to parse query: null"
而第二个不返回任何建议
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。