Rad*_*Hex 4 python django solr fuzzy-search django-haystack
我现在正在使用django-haystack和apache-solr作为后端.
问题是我无法让应用程序执行我正在寻找的搜索功能
搜索单词中的子部分
例如.搜索"buntu"不会给我"ubuntu"
寻找类似的单词
例如.搜索"ubantu"会给"ubuntu"
任何帮助将非常感谢.
这实际上是关于如何将查询传递回Haystack(因此也传递给Solr).您可以使用~后面的单词在Solr/Lucene中进行"模糊"搜索:
ubuntu~
Run Code Online (Sandbox Code Playgroud)
将返回buntu和ubantu.请参阅Lucene文档.
你如何通过Haystack传递这个取决于你现在如何使用它.假设您正在使用默认的SearchForm,最好的clean_q方法是覆盖表单的方法,在搜索结果中的每个单词的末尾添加波浪号,或者search在将其传递给搜索结果之前覆盖该方法以执行相同的操作. SearchQuerySet.
| 归档时间: |
|
| 查看次数: |
1810 次 |
| 最近记录: |