我对使用更改密码没有太多想法AdminPasswordChangeForm
。我得到了一个教程,发现了这个片段:
def user_change_password(request, id):
form = AdminPasswordChangeForm(User, request.POST)
if form.is_valid():
new_user = form.save()
msg = _('Password changed successfully.')
request.user.message_set.create(message=msg)
return HttpResponseRedirect('..')
else:
form = AdminPasswordChangeForm(User)
extra_context = {
'form': form,
'change': True
}
return direct_to_template(request,"users/user_password_change.html",
extra_context = extra_context)
url.py
和 template一切都很好user_password_chage.html
。在模板级别,它显示了一个包含两个密码字段的表单:一个是密码,第二个是密码(再次)。但是当我单击提交按钮更改密码时,它显示以下错误:
必须使用 User 实例作为第一个参数调用未绑定的方法 set_password()(改为获取 unicode 实例)
我是 Django 的新手,在官方文档中没有找到任何有关此表单的信息。