【发布时间】:2011-07-29 01:42:42
【问题描述】:
我有一个登录页面,在我看来,我将 csrf_token 标记的 csrfContext 变量传递给它。但是,当我尝试将不仅仅是该变量传递到上下文中时,就会出现问题。例如,如果我使用 locals()
return render_to_response('base_index.html', locals())
我收到一个 csrf 错误。出于某种原因,它只有在我明确传递 csrfContext 时才有效,而且只有 csrfContext。但是,我还需要传递其他变量。如何将 csrfContext 和这些变量一起传递?对不起,如果这是一个令人费解的问题。我的查看代码是:
def index(request):
current = Module.objects.all()
error = ""
try:
error = request.GET["alert"]
if error == "failure":
error = "Woops! Something went wrong. Please try again."
elif error == "invalid":
error = "Invalid username/password."
else:
error = "Unknown Error. Please try again."
except:
pass
csrfContext = RequestContext(request, error, current)
return render_to_response('base_index.html', csrfContext)
如您所见,我一直在尝试将变量添加到 RequestContext,但我不知道如何在模板中访问它们。
【问题讨论】:
-
在发布后几秒钟就明白了。我将我的退货声明修改为:
return render_to_response('base_index.html', locals(), csrfContext)一切正常!