我最近升級到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