【发布时间】:2013-02-20 08:37:11
【问题描述】:
我在 Solr 中有一组文档,我通过两个不同的 requestHandler 进行搜索。一个 requestHandler 在内部使用,应该能够查看所有文档。另一个由面向公众的搜索引擎使用。
有没有一种方法可以在我的 requestHandler 定义中应用 fq 参数,以便不返回文档的子集?
在这种情况下,我只想返回“fivi”字段不为零的文档。
【问题讨论】:
标签: solr
我在 Solr 中有一组文档,我通过两个不同的 requestHandler 进行搜索。一个 requestHandler 在内部使用,应该能够查看所有文档。另一个由面向公众的搜索引擎使用。
有没有一种方法可以在我的 requestHandler 定义中应用 fq 参数,以便不返回文档的子集?
在这种情况下,我只想返回“fivi”字段不为零的文档。
【问题讨论】:
标签: solr
request handler wiki page 展示了如何指定默认值:
<requestHandler name="/foo" class="my.package.CustomRequestHandler" />
<!-- initialization args may optionally be defined here -->
<lst name="defaults">
<int name="rows">10</int>
<str name="fl">*</str>
<str name="version">2.1</str>
</lst>
</requestHandler>
但是,如果您不希望它们能够覆盖这些值,请使用 invariants 而不是 defaults 作为 lst 元素的名称。
【讨论】:
appends 而不是invariants,因为我不想覆盖整个fq 参数,但我只想确保我的fq=-fivi:0 在那里。