2011-03-12 91 views
2

以下語法目前我渲染HTML視圖呈現模板:與CSRF令牌和模板背景

t = loader.get_template('sometemplate.html') 
c = Context ({ 
    'title': title, 
    'content': conent, 
}) 
return HttpResponse(t.render(c)) 

我想補充與CSRF保護一種形式,我的看法。我應該在語法中更改什麼,以便可以傳遞上下文和令牌來渲染視圖?

Django docs顯示了一個不同的方法來呈現其中包含CSRF標記的視圖,但在這些示例中沒有傳遞額外的上下文。

在此先感謝!

回答

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)) 
+0

感謝您的回答! :-) – skazhy 2011-03-12 12:54:34