需要提示该错误的全部内容

时间:2009-05-26 13:25:00

标签: django django-templates

我有一个相当奇怪的问题,在某种意义上我无法理解它可能是什么。我的网站使用django-registration,一切正常,但如果我重启django dev。在会话中间的服务器(即已登录)我立即得到错误:

渲染时捕获异常:反向'django.contrib.auth.decorators._CheckLogin对象位于0x235aa50',参数'()'和关键字参数'{}'未找到。

再一次:如果我不重启开发,一切正常。服务器。当且仅当我重新启动djange dev时才会发生此错误。服务器已登录到我的网站。

1 个答案:

答案 0 :(得分:4)

遗憾的是,Django中的URL反向功能非常脆弱。它的工作原理是导入所有视图,并查看哪些视图匹配。如果由于某种原因,它无法导入视图 - 任何视图附加到URLconf - 则整个反向匹配失败。

因此,有时您的视图中存在一些依赖项,这意味着在重新启动服务器后无法直接导入它们。这会导致所有URL反向匹配失败,即使与那些与问题无关的视图也是如此。但是如果刷新页面,通常会发现错误消失了。

错误可能根本不在django-registration中,但在某个地方你自己的观点中非常模糊。我会尝试评论所有其他网址,然后逐个重新启用它们 - 每次重新启动开发服务器 - 以查看错误何时出现。