我最近升级到Django 1.2.3,现在我的上传表单已经损坏。无论何时我尝试上传,我都会收到“CSRF验证失败,请求已终止。”错误信息。如何在Javascript生成的HTML表单中包含Django 1.2的CSRF令牌?
在阅读了关于此主题的Django's documentation之后,它声明我需要在模板中的HTML <form>
内添加{%csrf_token%}模板标记。不幸的是,我的<form>
是通过JavaScript(特别是面板上的ExtJs的“html”属性)生成的。
长话短说,当我的<form>
未包含在Django模板中时,如何将所需的CSRF令牌标记添加到我的<form>
?
我是否需要在动态生成的表单中添加/添加任何内容? – john2x 2011-04-06 09:57:05
@ john2x:不,你只需要把代码放入你的overrides.js。如果您不熟悉overrides.js的概念,那么以下博客是一个不错的开始:http://edspencer.net/2009/07/extoverride-monkey-patching-ext-js.html – chrisv 2011-04-07 11:03:31
+1。辉煌的是,当我找到这个答案时,我正在思考相同的问题! – Swanand 2012-04-05 15:57:51