Solr facet 标签排除不适用于 space
Solr facet tag exclude does not work with space
我正在使用排除和标签进行分面。奇怪的是,它在我没有 space 值的地方工作。
http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22AndhraPradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true
- 这行得通
但是
http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22Andhra Pradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true
- 这不
这两者之间的唯一区别是 {!tag=stateName}stateName="Andhra Pradesh"
中的 space({!tag=stateName}stateName="AndhraPradesh"
- 这有效)。
我不明白为什么。我已经尝试编码 URL,即将 +
或 %20
用于 space , 仍然没有运气。
同样的 PFA 图片
工作副本
编辑
这里是stateName
字段的定义。
<field name="stateName" type="string" multiValued="false" indexed="true" stored="true"/>
<fieldType name="string" class="solr.StrField" sortMissingLast="true"/>
问题是查询中的local parameters必须在字符串的开头:
{!tag=stateName}(stateName:"Andhra Pradesh")
而不是
({!tag=stateName}stateName:"Andhra Pradesh")
你也可以避免括号:
{!tag=stateName}stateName:"Andhra Pradesh"
我正在使用排除和标签进行分面。奇怪的是,它在我没有 space 值的地方工作。
http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22AndhraPradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true
- 这行得通
但是
http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22Andhra Pradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true
- 这不
这两者之间的唯一区别是 {!tag=stateName}stateName="Andhra Pradesh"
中的 space({!tag=stateName}stateName="AndhraPradesh"
- 这有效)。
我不明白为什么。我已经尝试编码 URL,即将 +
或 %20
用于 space , 仍然没有运气。
同样的 PFA 图片
工作副本
编辑
这里是stateName
字段的定义。
<field name="stateName" type="string" multiValued="false" indexed="true" stored="true"/>
<fieldType name="string" class="solr.StrField" sortMissingLast="true"/>
问题是查询中的local parameters必须在字符串的开头:
{!tag=stateName}(stateName:"Andhra Pradesh")
而不是
({!tag=stateName}stateName:"Andhra Pradesh")
你也可以避免括号:
{!tag=stateName}stateName:"Andhra Pradesh"