0

我想检索 elasticsearch index 文件夹下的所有索引。我得到了这个错误。

UnboundLocalError at /tjobfucksearch/

local variable 'results' referenced before assignment

我的意见.py

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

    query = request.GET.get('q', '')
    if query:
        results = SearchQuerySet().all()

    return render_to_response("tjob/fucksearch.html", {
        "results": results,
        "query": query
    })

我的网址.py

url(r'^tjobfucksearch/$', 'tjob.views.fucksearch'),

加:haystack 2.0.0,django 1.4 任何建议将不胜感激。请帮助我。

4

1 回答 1

1

考虑没有q提供参数的情况。Thenquery设置为''if query条件失败,因此未设置 results (甚至未设置为None;此时 Python 不知道名称results)。因此,当您尝试从中获取值results以将其传递到render_to_response. 也许添加:

results = None

前:

if query:
    ....

这样,results将始终由您需要将其传递给渲染的时间来定义。(您仍然必须处理模板中的无结果情况!)

于 2012-08-23T11:18:35.543 回答