将找回密码页面forgetpwd.html前端文件拷贝到项目的templates文件夹内。
然后修改注册页面register.html初始文件中的静态文件访问路径,修改成{%static'静态文件路径'%}的形式。
在users/form.py文件中编写form表单验证的代码:
1classForgetPwdForm(forms.Form):2"""找回密码表单验证"""3email=forms.EmailField(required=True)4captcha=CaptchaField(error_messages={'invalid':'验证码错误'})然后在users/views.py文件中编写找回密码的接口:
1classForgetPwdView(View):2"""找回密码"""3defget(self,request):4forget_form=ForgetPwdForm()5returnrender(request,'forgetpwd.html',{'forget_form':forget_form})最后配置找回密码的url:
1fromusers.viewsimportForgetPwdView23urlpatterns=[4path('forget/',ForgetPwdView.as_view(),name='forget_pwd'),#找回密码5]2.2前端页面配置首先在login.html中修改找回密码的url:
然后修改找回页面验证码图片显示的问题:
在utils/email_sendl.py文件中添加找回密码的邮件:
首先将修改密码的password_reset.html页面放到templates下。
在找回密码的邮件中点击找回密码的链接,进入修改密码的页面,首先需要编写重置密码(get方法获取重置密码页面)的接口:
1fromusers.viewsimportResetView23urlpatterns=[4re_path('reset/(P
现在开始编写重置密码页面的form表单验证的代码,在form.py中加入重置密码表单验证:
1classModifyPwdForm(forms.Form):2"""重置密码表单验证"""3password1=forms.CharField(required=True,min_length=5)4password2=forms.CharField(required=True,min_length=5)然后编写重置密码的接口:
1fromusers.viewsimportModifyPwdView23urlpatterns=[4path('modify_pwd/',ModifyPwdView.as_view(),name='modify_pwd'),#重置密码5]然后修改password_reset.html页面的一些其他需要修改的地方: