在Django中,如何在视图中生成CSRF输入元素?

时间:2013-01-21 03:12:44

标签: django

在Django模板中,我可以使用{% csrf_token %}生成一个隐藏的输入元素,并将CSRF标记作为值。

如何在视图中执行相同的操作?例如,

def my_view(request):
  csrf_input = somehow_generate_csrf_token_input()
  return HttpResponse(csrf_input)

1 个答案:

答案 0 :(得分:2)

按照doc,使用处理器生成CSRF令牌:

from django.core.context_processors import csrf

def my_view(request):
    # csrf(request) returns a dict like {'csrf_token': 'xxx'}
    csrf_token = csrf(request)['csrf_token']