Skip to main content
 首页 » 编程设计

python之django haystack/whoosh : find records with umlauts/diaeresis, 带有普通的 ascii 查询

2024年08月23日26shanyou

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

示例:搜索“Häberli”会返回包含它的所有记录。

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

奖励:搜索“Haeberli”也应返回这些结果。

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

请您参考如下方法:

您想在 Elasticsearch 中使用 ascii 折叠标记过滤器:关注 this链接。

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

这是完整解决方案的要点:link .