[py][mx]django-解決註冊用戶已存在,激活鏈接判斷
阿新 • • 發佈:2018-02-03
字典 reg login inf email pos .com log 圖片
註冊時候,如果用戶已存在,則提示錯誤
激活用戶時候,如果激活鏈接失效,則提示用戶.
class RegisterView(View): def get(self, request): register_form = RegisterForm() # 實例化register表單 return render(request, 'register.html', {'register_form': register_form}) def post(self, request): register_form = RegisterForm(request.POST) if register_form.is_valid(): user_name = request.POST.get("email", "") # 字典取值,如果無,賦值為空 if UserProfile.objects.filter(email=user_name): # 如果用戶存在 返回註冊頁面並提示 return render(request, 'register.html', {'msg': '用戶已存在', 'register_form': register_form}) pass_word = request.POST.get("password", "") user_profile = UserProfile() user_profile.username = user_name user_profile.email = user_name user_profile.password = make_password(pass_word) # 密碼加密存儲 user_profile.is_active = False user_profile.save() send_register_email(user_name, "register") return render(request, 'login.html') else: return render(request, 'register.html', {'register_form': register_form}) class ActiveView(View): # 主要功能是修改user_profile裏的is_active字段為1 def get(self, request, active_code): all_reocrds = EmailVerifyRecord.objects.filter(code=active_code) if all_reocrds: for record in all_reocrds: email = record.email user = UserProfile.objects.get(email=email) user.is_active = True user.save() else:#如果激活鏈接不存在,則返回激活失敗 return render(request,"active_faild.html") return render(request, 'login.html')
[py][mx]django-解決註冊用戶已存在,激活鏈接判斷