def clean_password(self): password = self.cleaned_data.get('password') mipassword = set_password(password) userid = self.data.get('userid') try: user = UserModels.objects.get(id=userid) except: raise forms.ValidationError('登录标识错误,请重新登录后再修改密码') if mipassword == user.password: return password else: raise forms.ValidationError('密码错误')
def post(self, request): data = request.POST.dict() verification = request.session.get('verification', '') data['verification'] = verification form = RegisterForms(data) if form.is_valid(): cleane_data = form.cleaned_data password = set_password(cleane_data['password']) phone = cleane_data['phone'] UserModels.objects.create(phone=phone, password=password) return redirect('users:login') else: context = {'form': form} return render(request, 'users/reg.html', context=context)
def clean(self): data = self.cleaned_data phone = data.get('phone') try: user = UserModels.objects.get(phone=phone) except: raise forms.ValidationError({'phone': '此号码未注册,请注册'}) password = set_password(data.get('password')) if user.password != password: raise forms.ValidationError({'password': '******'}) data['user'] = user return data
def post(self, request): # 接受用户提交的注册信息 data = request.POST form = RegisterModelForm(data) if form.is_valid(): # 数据合法 cleaned_data = form.cleaned_data # 操作数据库, 创建一个用户 user = User() user.user_phone = cleaned_data.get('user_phone') # 将密码进行加密 user.user_password = set_password(cleaned_data.get('password2')) # 然后将用户信息保存到数据库 user.save() # 跳转到登录界面 return redirect(reverse('user:login')) else: # 不合法 return render(request, 'user/reg.html', context={"form": form})
def post(self, request): data = request.POST.dict() # 把验证码传过去验证。 verification = request.session.get('verification', '') data['verification'] = verification form = RegisterForms(data) if form.is_valid(): # 验证成功,存数据。 cleane_data = form.cleaned_data password = set_password(cleane_data['password']) nickname = cleane_data['nickname'] email = cleane_data['email'] UserModels.objects.create(nickname=nickname, password=password, email=email) return redirect('user:login') else: code = setcode(request) context = { 'form': form, 'code': code, } return render(request, 'user/register.html', context=context)