首页 > 代码库 > django出错:CSRF token missing or incorrect.
django出错:CSRF token missing or incorrect.
解决方案:
1.在对应的模板中, 为每个POST的form添加一行代码:{% csrf_token %}。 如下所示:
<form action = "" method = "post">
{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type = "submit" value = "http://www.mamicode.com/Submit">
</form>
2.在对应的views.py中, 使用 django.template.RequestContext 而不是 Context。因为render_to_response 默认使用的是Context,我们需要改成 RequestContext。给 render_to_response函数增加一个参数,如下所示:
return render_to_response(‘contact_form.html‘,
{‘form‘ : form},context_instance = RequestContext(request))
3.修改settings.py,在MIDDLEWARE_CLASSES中加上‘django.middleware.csrf.CsrfViewMiddleware‘。如下所示:
1 MIDDLEWARE_CLASSES = ( 2 ‘django.contrib.sessions.middleware.SessionMiddleware‘, 3 ‘django.middleware.common.CommonMiddleware‘, 4 ‘django.middleware.csrf.CsrfViewMiddleware‘, 5 ‘django.contrib.auth.middleware.AuthenticationMiddleware‘, 6 ‘django.contrib.messages.middleware.MessageMiddleware‘, 7 ‘django.middleware.clickjacking.XFrameOptionsMiddleware‘, 8 )
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。