Skip to main content
 首页 » 编程设计

python之Django 密码重置表单

2025年05月04日22lyj

我希望用户能够通过我网站上的链接重置密码。我正在尝试使用内置的 django 密码重置表单,但有点困难。我的 urls.py 中包含以下内容

urlpatterns = patterns('', 
    url(r'^admin/password_reset/$', 'django.contrib.auth.views.password_reset', name='admin_password_reset'), 
    url(r'^admin/password_reset/done/$', 'django.contrib.auth.views.password_reset_done'), 
    url(r'^reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', 'django.contrib.auth.views.password_reset_confirm'), 
    url(r'^reset/done/$', 'django.contrib.auth.views.password_reset_complete'), 
    url(r'^admin/', include(admin.site.urls)), 

我通过以下方式访问链接:

<h3><a href="{% url 'password_reset' %}">Forgot your password?</a></h3> 

我也试过像这样包含它:

{% url django.contrib.auth.views.password_reset_confirm uid, token %} 
{% url django.contrib.auth.views.password_reset_confirm uidb36=uid, token=token %} 

我收到以下错误:

NoReverseMatch at /account/ 
Reverse for 'password_reset' with arguments '()' and keyword arguments '{}' not found. 

我尝试了很多不同的方法,但都没有成功。我需要传入 uid/token 吗?如果是这样,我该如何定义它们?

谢谢你的帮助

请您参考如下方法:

您的网址名为 admin_password_reset

<h3><a href="{% url 'admin_password_reset' %}">Forgot your password?</a></h3>