Django CSRF代币赢得';不显示

Django CSRF代币赢得';不显示,django,django-templates,django-csrf,Django,Django Templates,Django Csrf,以下是模板中的相关HTML片段: <form action="/submit_text/" method="post"> {% csrf_token %} {% include "backbone/form_errors.html" %} {{form.as_p}} <input type="submit" value="Submit" /> </form> CSRF令牌根本不显示,导致 禁止(403)CSRF

以下是模板中的相关HTML片段:

    <form action="/submit_text/" method="post">
    {% csrf_token %}
    {% include "backbone/form_errors.html" %}
    {{form.as_p}}
    <input type="submit" value="Submit" />
    </form>
CSRF令牌根本不显示,导致

禁止(403)CSRF验证失败。请求被中止


您需要在
render\u to\u响应中传递
RequestContext
,上下文处理器才能实际运行

 from django.template import RequestContext

 context = {}
 return render_to_response('my_template.html',
                           context,
                           context_instance=RequestContext(request))
新的快捷方式(django 1.3+)将为您提供:

 from django.shortcuts import render

 context = {}
 return render(request, 'my_template.html', context)

虽然有一个经过检查的答案,但我想指出,编写
context\u实例….
真的很烦人。我发现这很有用…尤其是对于
表单

context.update(csrf(request))

非常有帮助!我有一个自定义模板标记,所以我必须指定
@register.simple_标记(takes_context=True)
,然后
将render_返回到字符串('template.html',{},context_instance=context)
context.update(csrf(request))