将以下字符串编入索引的搜索:“Ordoñez”为:
text :lastname
然后搜索为:
User.solr_search do
keywords 'Ordonez'
end
将返回0结果。
如何索引字符串:Ordoñez使用solr并在执行搜索时获得匹配
keywords 'Ordonez'
或keywords 'Ordoñez'
我在索引时尝试了ASCIIFoldingFilter,但这没有完成任务。
Here's我做了什么来尝试使这项工作。
答案 0 :(得分:0)
您可能还需要在Container端添加处理。
答案 1 :(得分:0)
我的问题是有这3个字段,这些字段恰好未被使用。
<field name="firstname_text" type="textgen" stored="false" multiValued="true" indexed="true"/>
<field name="lastname_text" type="textgen" stored="false" multiValued="true" indexed="true"/>
<field name="specialty_text" type="textgen" stored="false" multiValued="true" indexed="true"/>
不太清楚为什么但是一旦删除它们,ASCII过滤器就开始工作了。
ASCIIFoldingFilterFactory可以完成这项工作。
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.ASCIIFoldingFilterFactory"/>
<filter class="solr.SynonymFilterFactory"/>
</analyzer>