No ReverseMatch : password reset activation email is not working in django?

∥☆過路亽.° 提交于 2019-12-25 05:19:11

问题


I am trying to see if password reset works in my development environment. The activation email is sent out to my console. but when I paste it on the browser, I get the following error:

Request Method: GET
Request URL:    http://127.0.0.1:8000/accounts/password/reset/confirm/MQ/3q5-7f3106e0a0cfc67d8bee/
Django Version: 1.6.2
Exception Type: NoReverseMatch
Exception Value:    
Reverse for 'password_reset_complete' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

I followed this post, but did not help. Here is my urls.py;

from django.conf.urls import include
from django.conf.urls import patterns
from django.conf.urls import url

from django.contrib.auth import views as auth_views
from django.core.urlresolvers import reverse_lazy

urlpatterns = patterns('',
                           url(r'^login/$',
                               auth_views.login,
                               {'template_name': 'registration/login.html'},
                               name='auth_login'),
                           url(r'^logout/$',
                               auth_views.logout,
                               {'template_name': 'registration/logout.html'},
                               name='auth_logout'),
                           url(r'^password/change/$',
                               auth_views.password_change,
                               {'post_change_redirect': reverse_lazy('auth_password_change_done')},
                               name='auth_password_change'),
                           url(r'^password/change/done/$',
                               auth_views.password_change_done,
                               name='auth_password_change_done'),
                           url(r'^password/reset/$',
                               auth_views.password_reset,
                               {'post_reset_redirect': reverse_lazy('auth_password_reset_done')},
                               name='auth_password_reset'),
                           url(r'^password/reset/confirm/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>.+)/$',
                               auth_views.password_reset_confirm,
                               name='auth_password_reset_confirm'),
                           url(r'^password/reset/complete/$',
                               auth_views.password_reset_complete,
                               {'post_reset_redirect': reverse_lazy('auth_password_reset_complete')},
                               name='auth_password_reset_complete'),
                           url(r'^password/reset/done/$',
                               auth_views.password_reset_done,
                               name='auth_password_reset_done'),
    )

How to fix this? I am using django 1.6 Thanks


回答1:


There is probably {% url 'password_reset_complete' %} somewhere in your template. Change it to

{% url 'auth_password_reset_complete' %}


来源:https://stackoverflow.com/questions/22596544/no-reversematch-password-reset-activation-email-is-not-working-in-django

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!