Django 1.10。为什么settings.LOGIN_URL默认为/ accounts / login /,而django.contrib.auth.urls使用^ login / $?

时间:2017-02-01 01:56:16

标签: django django-1.10

我正在迁移到Django 1.10并尝试修复登录问题。

所以,请topics.auth.default Using the views

我执行以下操作:

urlpatterns = [
    ....
    url('^', include('django.contrib.auth.urls')),
]

好的,现在我收到了关于 / accounts / login 不存在的404。现在,因为这是一个现有的应用程序,我正在转向Django 1.10,我首先想到我忘记了某个地方的网址。

但我找不到它。然后事实证明,在Django中:

django.conf.global_settings

LOGIN_URL = '/accounts/login/'

但是,Using the views说:

  

这将包括以下网址格式:
      ^ login / $ [name ='login']

正如 django.contrib.auth.urls

预期的那样
urlpatterns = [
    url(r'^login/$', views.login, name='login'),

还有一些关于观看 settings.LOGIN_URL 中的内容的更多指导。

基本上,我设置网址的方式,预计登录@ / login / 。但设置默认为 / accounts / login /

现在,我已将设置修改为LOGIN_URL = LOGIN_REDIRECT_URL = '/login/'。而且我现在必须处理模板名称错误,这是预期的,但至少我已经超过了404。

建议将顶级 urls.py 设置为:

是否更有意义?
 url('^accounts/', include('django.contrib.auth.urls')),

哪些设置默认排队更好?还有该页面上的其他指导,其中反复提及/accounts/xxx与身份相关的内容。

0 个答案:

没有答案