我在Django項目中將404.html中的關鍵字搜索框放在一個單獨的登錄框中,以防萬一發生404錯誤,訪問者獲得更多選項以跳轉到其他部分。使CSRF中間件在Django的404錯誤頁面中工作
但CSRF中間件不能在404錯誤頁面中工作,且不顯示csrf標記。我嘗試將'django.middleware.csrf.CsrfViewMiddleware'移動到settings.py中的第一個MIDDLEWARE_CLASSES,但是也沒有工作。
任何人都知道解決方案嗎?
我在Django項目中將404.html中的關鍵字搜索框放在一個單獨的登錄框中,以防萬一發生404錯誤,訪問者獲得更多選項以跳轉到其他部分。使CSRF中間件在Django的404錯誤頁面中工作
但CSRF中間件不能在404錯誤頁面中工作,且不顯示csrf標記。我嘗試將'django.middleware.csrf.CsrfViewMiddleware'移動到settings.py中的第一個MIDDLEWARE_CLASSES,但是也沒有工作。
任何人都知道解決方案嗎?
我的想法是你應該做your own error handler與django.middleware.csrf.get_token()
看起來手動生成令牌就像他們已經解決了這個在Django http://code.djangoproject.com/ticket/14565
這就是說,它不」 t似乎在最新版本中,所以我創建了一個與'django.views.defaults.page_not_found'
相同的內容的自定義錯誤視圖,使得在票據差異文件中找到更改。
你在404頁面上放置了一個csrf標記標記並且沒有生成標記嗎? – 2010-03-19 00:50:47
你的問題太開放了......你得到了什麼結果?你有沒有嘗試過這個網頁上的所有內容:http://docs.djangoproject.com/en/dev/ref/contrib/csrf/ – 2010-03-19 03:37:34
他得到'CSRF驗證失敗',令牌不會生成。 – zalew 2010-03-19 11:29:06