Python django密码重置功能中的NoReverseMatch错误
我试图在django中实现密码重置功能,下面是我的代码 url.pyPython django密码重置功能中的NoReverseMatch错误,python,django,forms,passwords,reset,Python,Django,Forms,Passwords,Reset,我试图在django中实现密码重置功能,下面是我的代码 url.py urlpatterns = patterns('', url(r'^signup/$', 'accounts.views.signup', name="signup_email"), url(r'^user/password/reset/$', 'django.contrib.auth.views.password_reset', {'template_name':'accounts/forgot_passwo
urlpatterns = patterns('',
url(r'^signup/$', 'accounts.views.signup', name="signup_email"),
url(r'^user/password/reset/$', 'django.contrib.auth.views.password_reset', {'template_name':'accounts/forgot_password.html',\
'post_reset_redirect' : '/user/password/reset/done/'}, name="reset_password"),
url(r'^user/password/reset/done/$', 'django.contrib.auth.views.password_reset_done'),
忘记密码.html
<form accept-charset="UTF-8" action="{% url 'reset_password' %}" class="reset_pass" id="reset_pass" method="post">
{% csrf_token %}
<div class="control-group">
<label class="control-label" for="user_email" style="font-size: 18px; color: #474747">Email</label>
<div class="controls">
<input class="" id="id_email" name="email" type="text" value="">
</div>
</div>
<div class="control-group">
<div class="controls">
<button type="submit" value="reset_password" class="btn btn-primary">Send me reset password</button>
</div>
</div>
</form>
任何人都可以告诉我,即使我使用内置视图,它为什么会抱怨
NoReversemtach
。您需要在url.py
中添加该url+视图,如下所示
url(r'^user/password/reset/confirm/$',
'django.contrib.auth.views.password_reset_confirm'),
它提供了一个输入新密码的表单
您可能还需要添加此选项
url(r'^user/password/reset/complete/$',
'django.contrib.auth.views.password_reset_complete'),
您还可以使用
django.contrib.auth.url
中定义的默认URL,包括
(r'^accounts/', include('django.contrib.auth.urls')),
到您的url.py
password\u reset\u confirm
模式需要为uidb64
和令牌提供两个附加参数:
url(r'^reset/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
'password_reset_confirm',
url(r'^reset/(?P[0-9A-Za-z_ \-])/(?P[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$,
“密码重置确认”,
请参见此处的答案:
url(r'^reset/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
'password_reset_confirm',