diff --git a/apps/users/views.py b/apps/users/views.py index b59f53ac564e29b96389d254814b5a42d7e22efc..e2f2ab8915562c56af5192938917e14642d15a72 100644 --- a/apps/users/views.py +++ b/apps/users/views.py @@ -13,102 +13,6 @@ from .forms import RegisterForm, LoginForm, ForgetForm, ModifyPwdForm from django.http import HttpResponse, HttpResponsePermanentRedirect -# Create your views here. -# class UserRegister(View): -# -# def get(self, request): -# """ -# 获取注册页面 -# :param request: -# :return: -# """ -# # 生成表单对象 -# register_form = RegisterForm() -# # 调用模版渲染生成表单 -# return render(request, 'register.html', {'register_form': register_form}) -# -# def post(self, request): -# """ -# 验证表单数据 -# :param request: -# :return: -# """ -# # 1、获取前端传递的表单数据 -# data = request.POST -# # 2、验证表单数据 -# register_form = RegisterForm(data) -# -# res = register_form.is_valid() # 验证成功返回True,验证失败返回False -# -# if res: -# # 验证成功,则执行相应业务逻辑操作,这里就直接返回验证成功后的字段数据 -# # 获取验证成功后的字段 -# # username = register_form.cleaned_data['username'] -# -# # -# # return HttpResponse(username) -# email = register_form.cleaned_data.get('email') -# password = register_form.cleaned_data.get('password') -# user = UserProfile.objects.create(email=email, password=password) -# return render(request, 'index.html') -# # email = request.POST.get('email') -# # password = request.POST.get('password') -# # -# # -# # # 用户处理 -# # user = UserProfile.objects.create_user( -# # email=email, -# # password=password, -# # -# # ) -# -# # 验证失败,则在注册模板中通过register_form.errors获取错误 -# return render(request, 'register.html', {'register_form': register_form}) - - -# class LoginView(View): -# def get(self, request): -# """ -# 获取注册页面 -# :param request: -# :return: -# """ -# # 生成表单对象 -# login_form = LoginForm() -# # 调用模版渲染生成表单 -# return render(request, 'login.html', {'login.html': login_form}) -# -# def post(self, request): -# """ -# 验证表单数据 -# :param request: -# :return: -# """ -# # 1、获取前端传递的表单数据 -# data = request.POST -# # 2、验证表单数据 -# login_form = LoginForm(data) -# res = login_form.is_valid() # 验证成功返回True,验证失败返回False -# -# if res: -# # 验证成功,则执行相应业务逻辑操作,这里就直接返回验证成功后的字段数据 -# # 获取验证成功后的字段 -# username = login_form.cleaned_data['username'] -# pass_word = login_form.cleaned_data['pass_word'] -# -# # user_name = request.POST.get('username', None) -# # pass_word = request.POST.get('password', None) -# -# return HttpResponsePermanentRedirect(reverse('index')) -# -# # 验证失败,则在注册模板中通过register_form.errors获取错误 -# return render(request, 'login.html', {'form_errors': login_form.errors}) - - -# users/views.py - -# 邮箱和用户名都可以登录 -# 基础ModelBackend类,因为它有authenticate方法 class CustomBackend(ModelBackend): def authenticate(self, request, username=None, password=None, **kwargs): try: @@ -207,38 +111,19 @@ class RegisterView(View): class ForgetPwdView(View): - def get(self, request): - """ - 获取忘记密码页面 - :param request: - :return: - """ - # 生成表单对象 + '''找回密码''' + def get(self,request): forget_form = ForgetForm() - # 调用模版渲染生成表单 - return render(request, 'forgetpwd.html', {'forgetpwd.html': forget_form}) - - def post(self, request): - """ - 验证邮箱数据 - :param request: - :return: - """ - # 1、获取前端传递的表单数据 - data = request.POST - # 2、验证表单数据 - forget_form = ForgetForm(data) - res = forget_form.is_valid() # 验证成功返回True,验证失败返回False - - if res: - # 验证成功,则执行相应业务逻辑操作,这里就直接返回验证成功后的字段数据 - # 获取验证成功后的字段 + return render(request,'forgetpwd.html',{'forget_form':forget_form}) + def post(self,request): + forget_form = ForgetForm(request.POST) + if forget_form.is_valid(): + email = request.POST.get('email',None) + send_register_eamil(email,'forget') return render(request, 'send_success.html') - - # 验证失败,则在注册模板中通过forget_form.errors获取错误 - return render(request, 'forgetpwd.html', {'forget_form': forget_form}) - + else: + return render(request,'forgetpwd.html',{'forget_form':forget_form}) class ResetView(View): def get(self, request, active_code):