solr本地参数无法识别

时间:2019-11-27 08:22:16

标签: solr

我想使用参数解引用,如下所述:

https://lucene.apache.org/solr/guide/8_1/local-parameters-in-queries.html

使用本地参数的示例对我不起作用,本地参数被解析为输入查询文本:

我的查询:

/solr/core/select?q={!dismax%20qf=name}blabla&debugQuery=true

解析的查询信息给我:

"rawquerystring": "{!dismax qf=name}blabla",
"querystring": "{!dismax qf=name}blabla",
"parsedquery": "+(DisjunctionMaxQuery(((name:dismax)^5.0 | description:dismax)) 
   DisjunctionMaxQuery(((name:qf)^5.0 | description:qf)) DisjunctionMaxQuery(((name:name)^5.0 | 
   description:name)) DisjunctionMaxQuery(((name:blabla)^5.0 | description:blabla)))~4",
"parsedquery_toString": "+((((name:dismax)^5.0 | description:dismax) ((name:qf)^5.0 | 
   description:qf) ((name:name)^5.0 | description:name) ((name:blabla)^5.0 | 
   description:blabla))~4)",
"explain": {},
...

我使用edismax作为默认查询解析器,而我的默认qfname^5 description

我尝试使用其他查询解析器,并且总是发生相同的情况。有想法吗?

1 个答案:

答案 0 :(得分:1)

q设置为解析器的情况下,不能直接在edismax中使用localparams。 edismax查询解析器does not support this since 7.2

  

从7.2开始,只有defType为lucene或lucene时,才能使用某些localparams。   功能lucene解析器是默认设置。由于您已更改defType   到edismax,localparams将不起作用。

我不确定为什么在示例中仍然需要localparams,因为您可以直接将qf=name添加到您的URL中?