POSTフォームを実行すると、Django 1.2は一貫して私にこのCSRF検証エラーを与えています。私は{%を確認してくださいつまり、Django 1.2.4 CSRFの確認に失敗しました
はMIDDLEWARE_CLASSESが 'django.middleware.csrf.CsrfViewMiddleware'
に同梱されていることを確認し、私はDjangoの1.2ドキュメントに尋ねたすべてのことをやった "と思います"私の応答%}
<form action="/words/new/" method="post"> {% csrf_token %} {{ form.as_p }} <input type="submit" value="Enter" /> </form>
使用RequestContextのcsrf_token
def create(request): if request.method == 'POST': form = DefinitionForm(request.POST) if form.is_valid(): form.save() c = {} return render_to_response('dict/thanks.html',c, context_instance=RequestContext(request)) else: form = DefinitionForm() return render_to_response('dict/create_definition.html', { 'form' : form, })
GETアクションがこの関数で機能することに注意してください。だから私はrender_to_responseの権利を使用していると思う。
私は@csrf_protectデコレータを投げ込もうとしても、うまく動作していないようです。私はアイデアがなく、私は自分のラップトップで自分自身を窒息させようとしています。
あなたは誰もが考えることができますか?
ありがとうございます!
ブラウザのHTMLをチェックして、csrfトークンフィールドがあることを確認してください。その後、POSTレスポンスをダンプして、ビューに戻ることを確認します。 – Spacedman