簡體   English   中英

如何在Django中使用干草堆實現通配符搜索

[英]How to achieve wildcard search using haystack in django

我目前正在django進行干草堆搜索。 我遇到了兩個問題,首先,當我使用“ Whoosh”引擎時,搜索只能返回與我的搜索鍵完全匹配的結果,例如,如果鍵入“ ABC”,則不能匹配“ ABCD”;其次,如何如何使用干草堆實現通配符搜索? 例如,如果鍵入“ A * C”,則可以返回“ ABC”,“ ABCCC”,“ AC”等。 或其他僅用於獲得相同結果的方法(基本上,以相同順序返回包含關鍵字的結果)

請注意,使用通配符時有一些注意事項。 首先,Haystack需要考慮一些事項,在此處查看建議。 默認情況下,通配符與auto_search一起使用,否則,您必須自己編譯查詢。

另一方面,您必須考慮后端干草堆的用途。 我最近沒有使用過Whoosh,但是我知道其他后端(例如Solr)在生成搜索項時默認使用至少3個字符的“組”,因此也可能是您正在搜索這樣做不會屬於任何這些組,或者不會匹配少於3個字符的單詞。

根據后端,您還可以配置所需的搜索是“開始於”,“包含”還是“結束於”。 您可能還需要查看Whoosh文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM