在send_email.py 继续添加:
elif send_
type ==
"forget":
email_title =
"哈课在线网链接"
email_body =
"请点击下面的链接重置你的密码: http://127.0.0.1:8000/reset/{0}".format(code)
send_status = send_mail(email_title, email_body, EMAIL_FROM, [email])
if send_status: pass
class ModifyPwdForm(forms.Form): #重置密码
password1 = forms.CharField(required=True, min_length=5)
password2 = forms.CharField(required=True, min_length=5)
views.py写入逻辑:
class ModifyPwdView(View):
"""
修改用户密码
"""
def post(self, request):
modify_form = ModifyPwdForm(request.POST)
if modify_form.is_valid():
pwd1 = request.POST.get(
'password1',
'')
pwd2 = request.POST.get(
'password2',
'')
email = request.POST.get(
'email',
'')
if pwd1 != pwd2:
return render(request,
'password_reset.html', {
'email': email,
'msg':
'密码不一致'})
user = UserProfile.objects.get(email=email)
user.password = make_password(pwd2)
user.save()
return render(request,
'login.html')
else:
email = request.POST.get(
'email',
'')
return render(request,
'password_reset.html', {
'email': email,
'modify_form': modify_form})