我想更新用户密码,但出现错误
str对象没有属性“ *”
if request.method == 'POST':
form = resetPwdForm(request.POST)
if form.is_valid():
email = form.cleaned_data['email']
passwordNew = form.cleaned_data['passwordNew']
passwordConfirm = form.cleaned_data['passwordConfirm']
#actual password is ok
if passwordConfirm == passwordNew:
#new password match confirm
u = request.POST.get('username', '')
u.set_password(passwordNew)
u.save()
问题就在网上u.set_password(passwordNew)
。
该u
不是实例User
为你打算,但一个字符串值从POST表单来的模型。您要做的就是根据User
您在表单字段中获得的用户名来获取实例
u = User.objects.get(username=request.POST.get('username', ''))
当没有这样的用户使用给定的用户名时,您还必须处理这种情况
try:
u = User.objects.get(username=request.POST.get('username', ''))
#setting password and whatever...
except User.DoesNotExist:
#do something
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句