Невозможно изменить django пространство имен URL-адресов - PullRequest
0 голосов
/ 30 марта 2020

Я включаю все Django URL-адреса авторизации в один go, например:

app_name = "main"
urlpatterns = [
    ...
    path("accounts/", include("django.contrib.auth.urls")),
    ...
]

Однако, если я go добавлю /accounts/password_reset/ и добавлю свою электронную почту, электронная почта получит отправлено, но не может решить URL сброса. Ошибка:

NoReverseMatch at /accounts/password_reset/

Reverse for 'password_reset_done' not found. 'password_reset_done' is not a valid view function or pattern name.

Я предполагаю, что причина в том, что это разрешимо в "main: password_reset_done". Затем я добавляю пространство имен в свой URL-адрес, например, так:

app_name = "main"
urlpatterns = [
    ...
    path("accounts/", include("django.contrib.auth.urls", namespace="main")),
    ...
]

Но затем я получаю еще одну ошибку:

django.core.exceptions.ImproperlyConfigured: Specifying a namespace in include() without providing an app_name is not supported. Set the app_name attribute in the included module, or pass a 2-tuple containing the list of patterns and app_name instead.

Что не имеет смысла, поскольку у меня уже есть app_name set.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...