跟随http://djangobook.py3k.cn/2.0/chapter07/
第七章时,本地测试contact表单,总是出现这个错误:
在网上搜索了很多解决方案。
1.先将form标签内加入{% csrf_token %}标签;<form action="/contact/" method="post">{% csrf_token %}...</form>,问题没有解决
2.在setting.py的MIDDLEWARE_CLASSES中添加:
‘django.middleware.csrf.CsrfViewMiddleware’,
‘django.middleware.csrf.CsrfResponseMiddleware’,
问题依旧没有解决。返回一个server错误505.网上说是因为django1.3以后便抛弃了CsrfResponseMiddleware。
3.将views.py中的 render_to_response()第二个参数用RequestContext封装:
someData ={'errors':errors,'subject':request.POST.get('subject', ''),'message': request.POST.get('message', ''),'email': request.POST.get('email', '')}
csRequest =RequestContext(request,someData)
return render_to_response('books/contact_form.html',csRequest)
上述三个方案都试过了,依旧是不行啊!还有人说因为django版本装了不同的有冲突?我检查了下我电脑里只有django1.4,没有第二个版本的。
求解决方案!