Django恢复默认网址

时间:2014-05-06 12:07:24

标签: django

我正在使用Django 1.6.4并且我构建了一个登录系统,它似乎正在运行,直到在浏览器中按下后退按钮。给我配合的网址是http://127.0.0.1:8000/login。这是我的项目URLconf:

urlpatterns = patterns('',
    (r'', include('apps.mylogin.urls')),
)

(在任何人之前,Django老兵指出空的正则表达式模式:) - 我尝试过在interwebs上建议的一些不同的:( '^', '^$'),甚至尝试移动应用程序URLconf进入项目的URLconf,所有这些似乎都会产生这个错误。当然,如果您在此代码中检测到恶作剧,请随意指出,我喜欢最佳实践:D)

include中包含的URLconf如下:

urlpatterns = patterns('apps.mylogin.views',
    url(r'^login/$', 'login', name='login'),
    url(r'^logged_in/$', 'logged_in', name='logged_in'),
)

假设我登陆登录页面而我没有输入任何信息,我只需点击提交;我创建的LoginForm类(在clean方法期间)将返回raise ValidationError。一切都按预期工作:所有适当的错误都显示给用户,生活很好......直到我按下后退按钮。在这一点上,我看到了一个捕获的404页面,上面写着这是一个发送到http://127.0.0.1:8000/login的GET请求,其中包含以下内容:

Using the URLconf defined in myproject.urls, Django tried these URL patterns, in this order:
^admin/
^account/
The current URL, login/, didn't match any of these.

我假设这些URL是Django定义的“基础”集的一部分;这一切都很好,但我很好奇为什么它似乎忘记了我的网址,突然找不到我刚才的位置。

非常感谢任何帮助,如果需要任何其他信息,请告诉我,我会尝试编辑此问题以反映它。

1 个答案:

答案 0 :(得分:0)

经过额外的测试和思考后,似乎存在缓存机制的冲突。在使用某些Safari扩展时,似乎会产生冲突,导致看起来像是注入信息;实际上它正在使用之前运行的几个教程中的代码。

我通过测试Chrome,Firefox和Safari来达到这个结论,所有这些都没有超出默认配置的任何扩展或增强功能。只有当我返回Safari并启用特定的扩展时(更荒谬的是这个特定的扩展不会禁止我的桌面......可能还有其他扩展可以协同工作)接收捕获的404错误以及看似注入的^account/