请问有在用 sunspot/solr 的大家,我在 solr analyzer 可以看到有 match,但是在 console 中搜寻却找不到:
>> Buy::Topic.search{ keywords '恐惧' }.total
=> 55
>> Buy::Topic.search{ keywords '恐惧研' }.total
=> 0
>> Buy::Topic.search{ keywords '恐惧 研' }.total
=> 7
>> Buy::Topic.search{ keywords '恐惧 研究' }.total
=> 4
我有特别去重新 reindex 过了,但是结果还是这样,就好像我的 query 不会正确分词。
这是我的 schema.xml
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer type="index">
<tokenizer class="solr.CJKTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="2" side="front"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.CJKTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
我的 rails 栏位都是 sunspot 的 text,所以应该会用这个才对。