django haystack / whoosh:使用普通的 ascii 查询查找带有变音符号/分音符的记录

django haystack / whoosh: find records with umlauts / diaeresis, with a plain ascii query

我的大海捞针中有 umlauts/diaeresis 和其他特殊字符(ä、ö、ü、é、è、ç 等)。它们似乎被很好地编入了索引,并且在搜索时可以找到,因为它们在索引中。

示例:搜索 "Häberli" returns 包含它的所有记录。

我想要的: 搜索 "Haberli" 应该 return 所有这些记录。我目前正在使用 SearchQuerySet.auto_query()。我没有在文档中找到任何提示。

奖励: 搜索 "Haeberli" 也应该 return 那些。

我正在使用 django 1.8.5、haystack 2.4.1 和 whoosh 2.7.0

您想将 ascii folding token filter 与弹性搜索一起使用:关注 this link.

编辑:再次阅读您的问题...您想要使用 whoosh.analysis.CharsetFilter 进行字符折叠的 Whoosh。

这里有完整解决方案的要点:link