我已经安装了Solr和我的Rails 3.0应用程序的太阳黑子宝石。Solr和太阳黑子模糊搜索
我的目标是做模糊搜索。 例如,我想将搜索字词“Chatuea Marguxa”命名为“ChâteauMargaux”。
其实,只找到相同的确切单词,所以模糊根本不起作用。
我的模型:
searchable do
text :winery
end
我的控制器:
search = Wine.search do
fulltext 'Chatuea Marguxa'
end
Solr的模式我试过了,用的n-gram:
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15"/>
</analyzer>
我也试图与双音位:
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
<filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true"/>
</analyzer>
在这两种情况下,我得到0响应。 (当然重新索引后)。
我做错了什么?
语音过滤器不能满足您的情况,您需要拼写检查/更正 – 2013-04-30 14:28:16
我可以使用什么工具?我不明白。 – 2013-04-30 15:36:52