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

How can I pass dynamic values to Solr fields in a URL?

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

示例:

http://localhost:8983/solr/searching/select?q=*:*&fq=maths:25 AND science: 30

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

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

你可以这样试试

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

像这样

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

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

select?q=dest_fieldname:"25"

可能您正在寻找的是 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