<p>好吧,所以我做了些什么来找出问题是在呼呼还是在干草堆里。我打开django shell并搜索haystack SearchQuery API search中没有显示的术语:</p>
<pre><code>./manage.py shell
$>> import whoosh
$>> from whoosh.query import *
$>> from whoosh.index import open_dir
$>> ix = open_dir('/home/somedir/my_project/haystack/whoosh/')
$>> ix.schema
<Schema: ['branch', 'category', 'coordinator', 'date_event', 'designation','details', 'django_ct', 'django_id'> 'name', 'organisation', 'overview','text', 'title']>
$>> searcher = ix.searcher()
$>> res = searcher.search(Term('text',u'akshit'))
$>> print res
<Top 1 Results for Term('text', 'akshit') runtime=0.000741004943848>
$>> print res['0']['name']
u'Akshit Khurana'
</code></pre>
<p>所以你看,Whoosh正确地索引了所有的数据。所以,现在我来试试searchqueryapi</p>
^{pr2}$
<p>所以,我意识到我必须检查一下呼呼声_后端.py草堆图书馆的档案看看发生了什么。打开-<code>haystack.backends.whoosh_backend around line number 345</code></p>
<pre><code>'''Uncomment these two lines because the raw_results set becomes empty after the filter call for some queries''
if narrowed_results:
raw_results.filter(narrowed_results)
</code></pre>
<p>到</p>
<pre><code>#if narrowed_results:
#raw_results.filter(narrowed_results)
</code></pre>
<p>然后就成功了。SearchQueryAPI按预期为测试查询返回一个结果。网络搜索工作,但我想知道是什么问题与海斯塔克这里。在</p>