我一直在使用Suggester在Solr4.7.1中尝试这个自动完成功能。我已经将它配置为显示短语建议。问题是如果我输入“游戏”我得到的建议是“游戏”或包含“游戏”的短语。 但如果我输入“游戏”,则根本没有显示任何建议。我如何获得不区分大小写的建议? 我在schema.xml字段中配置如下:
<fieldType name="text_auto" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.ShingleFilterFactory"
minShingleSize="2"
maxShingleSize="4"
outputUnigrams="true"
outputUnigramsIfNoShingles="true"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
答案 0 :(得分:1)
对我有用的是调整速度文件中的代码head.vm,我更改了'terms.prefix':function(){return $(“#q”)。val()。toLowerCase();}, 这解决了我的问题,因为我使用术语组件作为建议。
答案 1 :(得分:0)
我在Solr Admin Analysis视图中尝试了相同的架构。您可以在此处提供索引和查询值,以查看令牌的匹配方式。
对于你的架构,我在我的本地solr实例中尝试过,它似乎工作正常。即,游戏和游戏被认为是相同和匹配的。
我建议您发布请求查询,和/或提供建议器配置(如果您使用相同的配置)。