Tl; dr:如何在排序刻面值时让Solr 4忽略变音符号?在Solr 4中排序刻面值时忽略变音符号
我已经添加了以下四个文件到 “collection1” Solr的核心默认Solr的例子:
<doc>
<field name="id">1</field>
<field name="cat">manuka</field>
<field name="cat">mystery</field>
</doc>
<doc>
<field name="id">2</field>
<field name="cat">mānuka</field>
<field name="cat">stuff</field>
</doc>
<doc>
<field name="id">3</field>
<field name="cat">management</field>
<field name="cat">stuff</field>
</doc>
<doc>
<field name="id">4</field>
<field name="cat">abc</field>
<field name="cat">stuff</field>
</doc>
“猫” 的字段被定义为:
<field name="cat" type="string" indexed="true" stored="true" multiValued="true"/>
和“字符串”类型定义为:
<fieldType name="string" class="solr.StrField" sortMissingLast="true" />
当我在“cat”字段上进行方面查询时,按值( http://localhost:8983/solr/collection1/select?q=*%3A*&rows=0&wt=json&indent=true&facet=true&facet.field=cat&facet.sort=index
),我得到:
....
"facet_fields":{
"cat":[
"abc",1,
"management",1,
"manuka",1,
"mystery",1,
"mānuka",1,
"stuff",3]},
....
请注意,mānuka来之后神秘。我想有麦卢卡麦卢卡过来后和东西之前,就是我想要的那种忽略变音符号,包括长音符号。
如果这是一个非方面搜索,它看起来像我可以达到我想要的设置Collation为单独的副本字段和排序(我无法设置该字段本身的排序规则,因为存储数据将是整理键的二进制表示)。然而,看起来这种方法不可能用于方面查询,因为它们只能通过索引或计数来排序。
我可以俯视吗?是否有一些技巧可以让我在需要显示“猫”字段的环境中工作?