2017-06-14 86 views
1

我在django中执行password_change时遇到问题。Django password_change不起作用

这里是我的代码:

url('^password-change/$',password_change,{'post_change_redirect': 
'users:password_change_done'},name='password_change'), 

url('^password- change/done/',password_change_done,name='users_password_change_done'), 

的HTML代码是:

<h1>Change Password</h1> 

<form action="." method="post"> 
    {% csrf_token %} 
    {{form.as_p}} 

<input type="submit" value="Change password"> 
</form> 

,我得到的错误是:

NoReverseMatch在/用户/密码更改/

未找到参数'()'和关键字参数'{}'的'password_change_done'反转。 0模式尝试:[]

我已经看过其他文章处理类似的问题,但我还没有能够修复我的代码基于这些答案。

+2

你有没有注意到,你有一个额外的空间:“URL(‘^受密码变更/做/’......”如果不是你的问题我想你的views.py你试图反向“password_change_done”,但网址的名称是“users_password_change_done”,让我知道这是否适用于你 – Nazkter

+0

是的!这是问题!谢谢 –

回答

0

在urls.py试试这个

url('^password-change/$', password_change, {'post_change_redirect': 
'users:users_password_change_done'}, name='password_change'), 

url('^password-change/done/$', password_change_done, name='users_password_change_done'), 
+0

抱歉,我不能upvote因为我没有足够的声誉! 谢谢你的工作! –