我希望能够按字母顺序排序具有本地语言字符的字段,如'Ö','Ş'或'Ç'(土耳其文字符)。是Solr用特殊字符排序
我Solr模式的相关部分如下:
<field name="bookTitle" type="text_tr" indexed="true" stored="true"/>
<field name="bookTitleSort" type="string" indexed="true" stored="false"/>
<copyField source="bookTitle" dest="bookTitleSort"/>
首先,我尝试使用bookTitle asc
进行排序,但结果按字母顺序一点也不。然后我添加了一个名为bookTitleSort
的string
字段,并尝试bookTitleSort asc
。除特殊字符之外,它工作正常。以这些字符之一开头的那些字符就位于最后。
我用'CollationKeyFilterFactory'代替,因为它并不需要任何额外的罐子和土耳其的罚款。还添加了'TurkishLowerCaseFilterFactory'过滤器。无论如何,谢谢你指出我正确的方向。 – keune 2014-08-28 09:21:14