我想禁用查询的方面。 我有一个qt作为测试人员facet = true和facet.field = city 我正在使用像 本地主机:8983 / solr的/ MYWORK /选择Q = :&安培; QT =测试? 我想通过查询伪造facet字段而不是改变qt。我怎么能这样做。
答案 0 :(得分:0)
qt
用于选择请求处理程序。如果未指定'qt',则选择默认处理程序,通常为/select
。
所有处理程序都在solrconfig.xml文件中定义。打开该文件并搜索名称为tester
的请求处理程序,查看它是如何为分面定义的,您可以修改构面默认值。
如果你看到这样的行
<str name="facet">on</str>
删除与facet相关的内容。
重新启动solr并重试。
答案 1 :(得分:0)
正确的设置是“开”或“关”(不是真或假)。
如果要禁用特定RequestHandler的所有功能,这就是我的实现方式:
<requestHandler name="/Spellcheck" class="org.apache.solr.handler.component.SearchHandler">
<lst name="defaults">
<str name="df">NOSEARCH</str>
<str name="spellcheck.dictionary">default</str>
<str name="spellcheck">on</str>
</lst>
<lst name="invariants">
<str name="rows">0</str>
<str name="facet">off</str>
</lst>
<arr name="last-components">
<str>spellcheck</str>
</arr>
与防止用户使用处理程序相关的部分是“不变式”部分。这将覆盖命令中传递的任何设置。
答案 2 :(得分:-1)
您可以通过 facet 参数 true 或 false 来控制查询的分面强>
localhost:8983/solr/mywork/select?q=:&qt=tester&facet=true&facet.field=city
localhost:8983/solr/mywork/select?q=:&qt=tester&facet=false