目前,我使用以下语法呈现HTML视图:
t = loader.get_template('sometemplate.html')
c = Context ({
'title': title,
'content': conent,
})
return HttpResponse(t.render(c))
我想在我的视图中添加一个带有CSRF保护的表单。我应该在语法中更改什么,以便我可以传递上下文和令牌以呈现视图?
Django docs显示了使用CSRF令牌呈现视图的不同方法,但这些示例中没有传递其他上下文。
提前致谢!
答案 0 :(得分:8)
使用RequestContext而不是Context?此外,您可以使用render_to_response而不是返回HttpResponse:
from django.shortcuts import render_to_response
from django.template import RequestContext
return render_to_response('sometemplate.html', { 'title': title, 'content': content }, context_instance=RequestContext(request))