一个好的Django搜索应用程序?-如何用Haystack进行模糊搜索?

2024-09-28 01:27:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在用的是django haystack 以apachesolr作为后端。在

问题是我无法让应用程序执行我正在寻找的搜索功能

  1. 在单词中搜索子部分

    eg. Searching for "buntu" does not give me "ubuntu"

  2. 寻找相似的词

    eg. Searching for "ubantu" would give "ubuntu"


任何帮助都将不胜感激。在


Tags: django功能应用程序forsearchingubuntunot单词
1条回答
网友
1楼 · 发布于 2024-09-28 01:27:32

这实际上是关于如何将查询传递回Haystack(因此也传递给Solr)。您可以在Solr/Lucene中通过在单词后面使用~进行“模糊”搜索:

ubuntu~

将同时返回buntuubantu。请参阅Lucene documentation。在

你如何通过干草堆通过这取决于你现在如何使用它。假设您使用的是默认的SearchForm,最好的方法是重写表单的clean_q方法在搜索结果中每个单词的末尾添加波浪号,或者重写search方法在将其传递给SearchQuerySet之前在那里执行相同的操作。在

相关问题 更多 >

    热门问题