我想用一個名稱空間管理一個單獨的urls.py。 (1)是由Django安裝的系統範圍的urls.py,並且我做了(2)有索引頁和「accounts」認證頁面。帶名字空間的Django認證urls.py
(1)urls.py包括與命名空間common.url 「常用」
url(r'^', include('common.urls', namespace='common')),
(2)urls.py聲明如下:
url(r'^accounts/', include('django.contrib.auth.urls')),
url(r'^accounts/register/$', UserCreateView.as_view(), name='register'),
url(r'^accounts/register/done/$', UserCreateDoneTemplateView.as_view(), name='register_done'),
以下URL是否正確通過反相Django的。
但是,「common:password_change_done」沒有顛倒過來,我遇到了「NoReverseMatch」錯誤。
當然,url聲明放在系統範圍的urls.py(1)中。我只是想知道是否可以將它分成一個單獨的應用程序(2)。
謝謝。
你可以顯示完整的錯誤和追溯? – knbk
Django驗證網址已經在'auth'命名空間中。試試'{%url'auth:登錄'%}'或'{%url'common:auth:login'%}' – Alasdair
@Alasdair對於遲到的反饋,我很遺憾。 我沒有包含auth.urls,但我知道以下視圖需要使用正確的命名空間來設置「success_url」。 PasswordChangeView。as_view( success_url = reverse_lazy( '共同:password_change_done')), PasswordResetView.as_view( success_url = reverse_lazy( '共同:password_reset_done')), PasswordResetConfirmView.as_view( success_url = reverse_lazy( '共同:password_reset_complete' )), – nasiajai