问题是关于返回字段。
如果我有一组字段,在xml中的某个RequestHandler配置的fl中指定,那么在查询中指定的fl将覆盖在xml中的RequestHandler配置中指定的fl。有没有办法强制solr在两个FL值之间执行OR操作(不是覆盖,而是连接):from query和from RequestHandler配置?
例如,如果在查询中有fl=field1,field2,在RequestHandler xml配置中有fl=field3,field1,那么这两个的连接将是fl=field1,field2,field3,这是将在最终查询中运行的。
我想使用在RequestHandler配置xml中指定的fl值,因为它们太多(~20),而且我不想在每个请求中都指定它们。
谢谢!
发布于 2014-08-17 23:41:38
您可以在requestHandler定义中使用<lst name="appends">来使Solr将值追加到查询中,而不是替换它们。由于可以多次将fl添加到同一请求中,因此在扩展要检索的字段列表时,这是可行的。
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="appends">
<str name="fl">cat</str>
</lst>
</requestHandler>除非客户端提供字段列表,否则只会返回cat。如果它包含fl参数,则它们都将处于活动状态。
https://stackoverflow.com/questions/25350674
复制相似问题