与django-haystack和Solr的拼写建议

时间:2011-01-04 14:42:58

标签: django spell-checking django-haystack

我的拼写建议得到“无”。

首先,我在settings.py文件中设置了这个:

HAYSTACK_INCLUDE_SPELLING = True

我重建了索引:

python manage.py rebuild_index

并更新它以获得良好的衡量标准

python manage.py update_index

搜索工作正常。当我搜索“Charger”时,它返回匹配的结果。所以在我的views.py中,我尝试了:

from haystack.query import SearchQuerySet
def testpage(request):

    test_results = SearchQuerySet().auto_query('Chargr')
    spelling_suggestion = test_results.spelling_suggestion()

    return render_to_response('testpage.html', {
        'test': test_results,   
        'spelling_suggestion': spelling_suggestion
    })

然而,我的模板:

<html>
    <body>

        {{ test }}<p>
        {{ spelling_suggestion }}

    </body>
</html>

仍然没有返回任何内容:

[]

None

显然,我对{{test}}没有任何期望,但我不应该为{{spelling_suggestion}}获得一些东西吗?我错过了什么?

1 个答案:

答案 0 :(得分:3)

我终于搞清楚了(在Haystack消息组的帮助下)

必须对配置更改进行一些详细信息here。另外,我不得不在haystack的views.py文件中添加行(在def extra_context下):

spelling = self.results.spelling_suggestion(self.query)
return {'suggestion': spelling, . . .

然后我将{{suggest}}添加到我的输出模板