1

我在 Django 项目中的 404.html 中单独放置了一个登录框和一个关键字搜索框,以便在出现 404 错误的情况下,访问者可以获得更多选项来跳转到其他部分。

但是 CSRF 中间件在没有呈现 csrf 令牌的 404 错误页面中不起作用。我尝试将 'django.middleware.csrf.CsrfViewMiddleware' 移动到 settings.py 中 MIDDLEWARE_CLASSES 的第一个,但也没有工作。

有人知道解决方案吗?

4

2 回答 2

1

看起来他们已经在 Django http://code.djangoproject.com/ticket/14565中修复了这个问题

也就是说,它似乎不在最新版本中,所以我创建了一个与 相同内容的自定义错误视图,'django.views.defaults.page_not_found'在票证差异文件中进行更改。

于 2010-12-15T19:43:00.957 回答
0

我的想法是您应该制作自己的错误处理程序并使用 django.middleware.csrf.get_token() 手动生成令牌

于 2010-03-19T11:33:27.103 回答