繁体   English   中英

Django:如何使用自定义 url 名称而不是“password_reset_done”作为 urls.py 中的密码重置路由?

[英]Django: How to use custom url name instead of 'password_reset_done' for password reset route in urls.py?

我正在创建我的第一个 Django 项目并实现密码重置功能。 所以我知道我必须使用以下名称配置 URL 并使用内置视图。

  1. 重设密码
  2. 密码重置完成
  3. password_reset_confirm
  4. 密码重置完成

但是我创建了一个单独的应用程序accounts来处理身份验证部分
并且我遵循在命名应用程序特定 URL 之前添加应用程序名称的约定。
因此,所有的URL中accounts应用有权accounts-预谋给他们。

path('signup/', views.signup, name='accounts-signup'),
path('logout/', auth_views.LogoutView.as_view(), name='accounts-logout'),

问题:
但是在创建密码重置 URL 时,我必须使用上面提到的预定义名称。
有没有办法使用自定义名称代替这些预定义名称,或者以任何方式在 settings.py 中覆盖这些名称

我检查了 settings.py 的文档,但找不到任何东西。

期待:
我希望能够分配自定义名称,例如accounts-password_resetaccounts-password_reset_done

该应用程序可以使用预定义的名称正常工作,但是如果我想在同一个项目中使用单独的身份验证系统和单独的路由创建另一个应用程序,该怎么办。 重置密码路由的相同名称会不会导致其他应用程序中的命名空间冲突?

您不必将app名称附加到您的url名称,如果您正在使用app django 命名空间,您可以指定您要查找的url 例子:

reverse('accounts:password_reset')

这将返回处理您在urls.py文件中使用path('reset',ViewFunc,name='password_reset')指定的密码重置的视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM