如何将动态值传递给URL中的Solr字段?

时间:2016-04-27 07:13:54

标签: solr solrj solr4 solrcloud

如何将动态值传递给URL中的Solr字段?

示例:

{{1}}

25和30是动态值。如何将它们作为Solr URL的一部分传递?

2 个答案:

答案 0 :(得分:1)

建议您需要准确定义要搜索的具体字段。您无法在查询中使用字段名称中的通配符来搜索所有动态字段。

你可以试试这种方式

- 将动态字段复制到其他目标字段中 - 查询目的地字段

类似这样的事情

<copyField source="dynamicfieldname_*" dest="dest_fieldname"/>

现在您可以使用该字段名称查询solr,如

select?q=dest_fieldname:"25"

答案 1 :(得分:1)

您正在寻找的是Solr被称为Parameter Dereferencing的内容。 参数解除引用允许您使用另一个参数的值,而不是直接指定它。这可以与solrconfig.xml结合使用,简化查询调用。

例如,写一下:

.../select?q=*:*&fq=maths:25 AND science:30

你可以写:

.../select?q=*:*&fq={!qf=maths v=$q1}&fq={!qf=science v=$q2}&q1=25&q2=30