我只想要检查我是否正确地做事。我想为我的django应用程序添加高级搜索功能,我开始用SOLR作为后端测试Haystack。
因为我确实需要部分匹配,所以我修改了schema.xml,因此haystack定义的文本字段的类型为nGram,如下所示:
<field name="text" type="ngram" indexed="true" stored="true" multiValued="false" />
部分匹配现在使用haystack中包含的默认视图,因此对于名为John的模型,如果我查找“Joh”,则会找到它,因为它是“ohn”或任何3个字母组合。
这是正确的方法吗?由于性能问题,为什么默认情况下不是ngram类型的文本字段?
非常感谢!