def register(request): if request.session.get('is_login', None): return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不一致!" return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = "该邮箱地址已被注册,请使用别的邮箱!" return render(request, 'login/register.html', locals()) #一切ok的情况下,创建新用户 new_user = models.User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) return redirect('/login/') #自动跳转到登录页面 register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/login/index') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查填写的内容' if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = '两次输入密码不同!' return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) models.User.objects.create(name=username, password=hash_code(password1), email=email, sex=sex) return redirect('/login/login') register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "please check the content" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "password are different!" return render(request, 'register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = 'username has been used!' return render(request, 'register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = 'the address has been registed!' return render(request, 'register.html', locals()) new_user = models.User() new_user.name = username new_user.password = password1 new_user.email = email new_user.sex = sex new_user.save() return redirect('/login/') register_form = forms.RegisterForm() return render(request, 'register.html', locals())
def register(request): #先实例化一个RegisterForm的对象,然后使用is_valide()验证数据,再从cleaned_data中获取数据 if request.session.get('is_login', None): # 登录状态不允许注册。你可以修改这条原则! return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] sex = register_form.cleaned_data['sex'] if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) # 当一切都OK的情况下,创建新用户 new_user = models.User() new_user.name = username new_user.password = password1 new_user.sex = sex new_user.save() return redirect('/login/index.html/') # 自动跳转到登录页面 register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: # 邮箱地址唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.password = hash_code(password1) # 使用加密密码 new_user.email = email new_user.sex = sex new_user.save() return redirect('/login/') # 自动跳转到登录页面 register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect("login:index") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容" print(register_form) print(1111111) if register_form.is_valid(): username = register_form.cleaned_data.get("username") password1 = register_form.cleaned_data.get("password1") password2 = register_form.cleaned_data.get("password2") email = register_form.cleaned_data.get("email") sex = register_form.cleaned_data.get("sex") if password1 != password2: message = "两次密码不一致" return render(request, "login/register.html", locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = "用户名已经存在" return render(request, "login/register.html", locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = "该邮箱已经被注册" return render(request, "login/register.html", locals()) # 把验证通过的注册信息存入数据库 new_user = models.User() new_user.name = username # 将注册的密码转为十六进制数据存入到数据库 new_user.password = diy_method.hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = diy_method.make_confirm_string(new_user) diy_method.send_email(email, code) message = "请前往邮箱进行确认!" return render(request, "login/confirm.html", locals()) """ # 让用户在注册过后跳转到首页不需要再次登录 user = models.User.objects.get(name=new_user.name) # 通过下面的语句,我们往session字典里面写入用户状态和数据 request.session['is_login'] = True request.session['user_id'] = user.id request.session['user_name'] = user.name return redirect("login:index") """ return render(request, "login/register.html", locals()) register_form = forms.RegisterForm() return render(request, "login/register.html", locals())
def register(request): if request.session.get('is_login', None): # 登录状态不允许注册! return redirect("/board/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] phone_number = register_form.cleaned_data['phone_number'] if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(username=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: # 邮箱地址唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) same_phone_number = models.User.objects.filter( phone_number=phone_number) if same_phone_number: # 电话号码唯一 message = '该电话号码已被注册,请使用其它电话号码!' return render(request, 'login/register.html', locals()) # 当一切都OK的情况下,创建新用户 new_user = models.User() new_user.username = username new_user.password = hash_code(password1) # 使用加密密码 new_user.email = email new_user.phone_number = phone_number new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code, function_code='register') message = '请前往注册邮箱,进行邮件确认!' return render(request, 'login/confirm.html', locals()) # 跳转到等待邮件确认页面。 else: #is not valid pass else: register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.method == 'POST': # Get the bound register form form = forms.RegisterForm(request.POST) # Validate the register form if form.is_valid(): validate_new_password_response = validate_new_password( form.cleaned_data['user_password'], form.cleaned_data['user_password_again']) if not validate_new_password_response['successful']: return render( request, 'login/register.html', { 'page_error': 'The passwords you entered do not match. Please enter the same password twice.', 'form': form }) new_user = User( user_email=form.cleaned_data['user_email'], user_password=form.cleaned_data['user_password'], user_team_name=form.cleaned_data['user_team_name'], user_referring_email=form.cleaned_data['user_referring_email']) new_user.user_password = new_user.hash_password() try: new_user.full_clean() except ValidationError as e: return render( request, 'login/register.html', { 'page_error': 'There was a problem during registration. Try again.', 'form': form }) else: new_user.save() request.session['user_id'] = new_user.user_id return HttpResponseRedirect('/home/') else: form = forms.RegisterForm() registration_locked = False week_one = Week.objects.get(week_number=1) if week_one.picks_lock < timezone.now(): registration_locked = True # Renders the register form if it's a new request return render(request, 'login/register.html', { 'form': form, 'registration_locked': registration_locked })
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): username = register_form.cleaned_data.get('username') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') sex = register_form.cleaned_data.get('sex') # 两次输入的密码必须相同 if password1 != password2: message = '两次输入的密码不同!' return render(request, 'login/register.html', locals()) else: # 不能存在相同用户名和邮箱 same_name_user = models.User.objects.filter(name=username) if same_name_user: message = '用户名已经存在' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱已经被注册了!' return render(request, 'login/register.html', locals()) # 利用ORM的API,创建一个用户实例,然后保存到数据库内 new_user = models.User() new_user.name = username new_user.password = hash_code(password1) # hash加密 # new_user.password = password1 new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) message = '请前往邮箱进行确认!' return render(request, 'login/confirm.html', locals()) else: return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): # 登录状态不允许注册。你可以修改这条原则! return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] print({"password1": password1, "password2": password2}) if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) print("same_name_user:"******"请前往注册邮箱,进行邮件确认!" return render(request, 'login/confirm.html', locals()) else: register_form = forms.RegisterForm(request.POST) return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('user_index') if request.method == 'POST': reg_form = forms.RegisterForm(request.POST) message = '请检查填写的内容!' if reg_form.is_valid(): username_f = reg_form.cleaned_data.get('username') email_f = reg_form.cleaned_data.get('email') password1 = reg_form.cleaned_data.get('password1') password2 = reg_form.cleaned_data.get('password2') if password1 != password2: message = '两次输入的密码不同!' return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter( username=username_f) if same_name_user: message = '用户名已经存在' return render(request, 'login/register.html', locals()) same_name_user = models.User.objects.filter(email=email_f) if same_name_user: message = '邮箱已经存在' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.username = username_f new_user.email = email_f new_user.password = hash_code(password1) new_user.save() # 保存提交用户信息 # 增加邮件地址验证 把新注册用户制作出code验证码 code = make_confirm_string(new_user) send_email(email_f, code) message = '请前往邮箱进行确认!' return render(request, 'login/confirm.html', locals()) else: return render(request, 'login/register.html', locals()) reg_form = forms.RegisterForm(request.POST) return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): messages.error(request, "请先退出后再注册!") return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) if not register_form.is_valid(): messages.error(request, "表单信息有误!") return render(request, 'regist.html', locals()) username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] if password1 != password2: # 两次密码是否相同 messages.error(request, "两次输入的密码不一致!") return render(request, 'regist.html', locals()) if models.User.objects.filter(name=username).exists(): # 用户名是否唯一 messages.error(request, "该用户名已注册!") return render(request, 'regist.html', locals()) if models.User.objects.filter(email=email).exists(): # 邮箱地址是否唯一 messages.error(request, "该邮箱已注册!") return render(request, 'regist.html', locals()) new_user = models.User.objects.create() new_user.name = username new_user.password = models.gen_md5(password1, username) new_user.email = email new_user.is_admin = False # 只能注册普通用户 new_user.save() request.session['is_login'] = True # 注册后自动登录 # request.session['is_admin'] = user.is_admin request.session['is_admin'] = True request.session['username'] = username request.session.set_expiry(3600) messages.success(request, "注册成功!") new_user.last_login_time = new_user.login_time = timezone.now() new_user.save() return redirect('/index/') register_form = forms.RegisterForm() return render(request, 'regist.html', locals())
def register(request): """ 注册 :param request: :return: """ form = forms.RegisterForm( ) #注意,request.POST是前台传过来的,我们能如果在这里加的话,前端页面会展示出为空的错误 return render(request, 'login/register.html', {"form": form})
def register(request): if request.session.get('is_login',None): return redirect("/autoplat/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写内容" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "2次输入的密码不一致" return render(request,'login/register.html',locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message="用户已经存在,请重新选择用户名" return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) current_site = get_current_site(request) domain=current_site.domain new_user = models.User() salt = set_salt() new_user.name = username new_user.salt = salt new_user.password = hash_code(password1, salt) new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email,code,domain,username) message = '请前往注册邮箱,进行邮箱确认!' return render(request, 'login/confirm.html', locals()) return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): #登录状态不允许注册 if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = "所有内容均需填写!" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] try: same_name = models.User.objects.get(username=username) except: same_name = False try: same_email = models.User.objects.get(email_address=email) except: same_email = False if same_name: message = "用户名已存在" return render(request, 'login/register.html', locals()) if same_email: message = '该邮箱已注册' return render(request, 'login/register.html', locals()) if password1 != password2: message = "密码不一致" return render(request, 'login/register.html', locals()) # 一切正常的情况下 new_user = models.User() new_user.username = username new_user.password = password1 new_user.email_address = email new_user.save() code = make_confirm_string(new_user) send_email(email, code) message = "注册成功,现在您可以登陆了" login_form = forms.UserForm() return render(request, "login/login.html", locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): #pass if request.session.get('is_login', None): # 登录状态不允许注册,你可以修改这条原则 return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): #获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: #用户名唯一 message = "用户已经存在,请重新选择用户名!" return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: #邮件地址唯一 message = "该邮箱地址已被注册,请使用别的邮箱!" return render(request, 'login/register.html', locals()) # 当一切都OK情况下创建新用户 new_user = models.User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_mail(email, code) message = "请前往注册邮箱, 进行邮箱确认" return render(request, "login/confirm.html", locals()) #自动跳转到登录页面 register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): # return redirect("/index/") return redirect(reverse('index')) if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: # 判断两次密码输入的是不是一样 message = "两次输入的密码不同" return render(request, 'login/register.html', {'message': message, "register_form": register_form}) else: same_name_user = models.User.objects.filter(nick_name=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', {'message': message, "register_form": register_form}) same_email_user = models.User.objects.filter(email=email) if same_email_user: # 邮箱唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', {'message': message, "register_form": register_form}) # 看起来数据符合我们的要求了,下面创建用户 new_user = models.User() new_user.nick_name = username new_user.password = hash_code(password1) # 或者password2 new_user.email = email new_user.sex = sex new_user.save() #发送激活验证码到邮箱 send_verify_code(email) message = '请前往注册邮箱,进行邮件确认!' # return redirect("/login/", {"message": message}) # return redirect(reverse("login")) # 跳转到登录页面 return render(request, 'login/active.html', {"message": message}) # 跳转到等待邮件确认页面。 register_form = forms.RegisterForm() return render(request, 'login/register.html', {"register_form": register_form})
def register(request): if request.session.get('is_login', None): return redirect("/index") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不一致" return render(request, "login/register.html", locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = "用户已存在,请重新设置用户名" return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = "该邮箱地址已被注册,请登录" return redirect('/login') new_user = models.User() new_user.name = username new_user.password = common.hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = common.make_confirm_string(new_user) common.send_email(email, code) message = "请前往注册邮箱,进行邮箱确认!" return render(request, 'login/confirm.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = '请检查填写的内容!' if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = '两次输入的密码不相同!' return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = '用户名已经存在,请重新选择!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱地址已经被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.password = hash_code(password2) new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) message = '请前往注册邮箱,进行确认!' return render(request, 'login/confirm.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect(reverse('login:index')) if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查填写的内容' if register_form.is_valid(): username = register_form.cleaned_data.get('username') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') sex = register_form.cleaned_data.get('sex') if password1 != password2: message = '两次密码不一致' return render(request, 'login/register.html', locals()) else: same_name_user = User.objects.filter(name=username) if same_name_user: message = '用户名已存在' return render(request, 'login/register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: message = '该邮箱已经注册' return render(request, 'login/register.html', locals()) new_user = User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() # return redirect('/login/') code = make_confirm_string(new_user) send_email(email, code) message = '请前往邮箱确认' return render(request, 'login/confirm.html', locals()) else: return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容" if register_form.is_valid(): username = register_form.cleaned_data.get('username') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') sex = register_form.cleaned_data.get('sex') address = register_form.cleaned_data.get('address') if password1 != password2: message = "两次输入密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = "用户名已经存在!" return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱已经被注册了!' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.password = password1 new_user.email = email new_user.sex = sex new_user.address = address new_user.save() return redirect('/login/') else: return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html')
def register(request): if request.session.get('is_login', None): # 已经登录的不能注册 return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查填写的内容。' if register_form.is_valid(): username = register_form.cleaned_data['username'] # 获取注册表单(字典结构)中填写的合法数据,存放在变量中 password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不一致!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = '用户已经存在,重新输入一个用户名.' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该电子邮箱已经被注册,请重新填入一个.' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.password = hash_code(password1) # 加密密码 new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) message = '请前往注册邮箱,点击链接进行邮件确认。' return render(request, 'login/confirm.html', locals()) # 显示邮件确认页面 # GET方式时 register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查您输入的内容' if register_form.is_valid(): username = register_form.cleaned_data['username'] password = register_form.cleaned_data['password1'] password1 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password != password1: message = '二次密码不一样,请重新输入' return render(request, 'login/register.html', locals()) else: try: same_user_name = models.User.objects.get(name=username) except: same_user_name = False if same_user_name: message = '用户名已存在' return render(request, 'login/register.html', locals()) try: same_email_name = models.User.objects.get(email=email) except: same_email_name = False if same_email_name: message = '邮箱以被注册' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.password = hash_cold(password1) new_user.email = email new_user.sex = sex new_user.save() return redirect('/login/') register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = '请检查填写内容' if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] gender = register_form.cleaned_data['gender'] if password1 != password2: message = '两次输入密码不同' return render(request, 'login/register.html', locals()) else: same_name = models.User.objects.filter(name=username) if same_name: message = "用户已存在,请更换用户名" return render(request, 'login/register.html', locals()) same_email = models.User.objects.filter(email=email) if same_email: message = "邮箱已经注册过" return render(request, 'login/register.html', locals()) new_user = models.User.objects.create() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.gender = gender new_user.save() code = make_confirm_string(new_user) # send_email(email, code) message = '请立即前往邮箱, 进行邮件确认,没有收到邮件?' return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html')
def register(request): if request.session.get('is_login', None): return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写的内容" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不一致" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(username=username) if same_name_user: message = "该用户名已存在" return render(request, 'login/register.html', locals()) same_email = models.User.objects.filter(email=email) if same_email: message = "该邮箱已被注册" return render(request, 'login/register.html', locals()) new_user = models.User() new_user.username = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() return redirect('/login/') register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): #登陆状态不允许注册 return redirect("/index/") if request.method == "POST": register_form = forms.RegisterForm(request.POST) print(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: message = "两次输入的密码不相同!" return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = '用户名已存在,请重新输入用户名!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = '该邮箱已被注册,请重新输入邮箱!' return render(request, 'login/register.html', locals()) #条件满足创建用户 new_user = models.User() new_user.name = username new_user.password = password1 new_user.email = email new_user.sex = sex new_user.save() return redirect('/login/') register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def add_register(request): """ 处理注册提交的数据,保存到数据库 :param request: :return: """ form = forms.RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data print(data) #清洗数据 data.pop("re_password") data['password'] = hash_pwd.has_password(data.get('password')) #添加必要数据 data['is_active'] = 1 #格式化储存 models.UserInfo.objects.create(**data) return redirect('login') else: #把前端提交的包含错误信息的对象返回到前端页面 return render(request, 'login/register.html', {"form": form})
def register(request): if request.method == "POST": register_form = forms.RegisterForm(request.POST) message = "请检查填写内容~" # 获取数据 if register_form.is_valid(): username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] pet_type = register_form.cleaned_data['pet_type'] intro = register_form.cleaned_data['intro'] if password1 != password2: message = "两次输入的密码不同" hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) elif len(password1) < 6 or len(password1) > 12: message = "密码长度在6-12个字符间" hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) elif len(username) > 15 or len(username) < 2: message = "用户名长度必须在2-15字符间" hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) #如果用户名存在 if same_name_user: message = "用户名已存在,请重新输入" hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) #如果邮箱存在 if same_email_user: message = "邮箱已被注册,请换一个邮箱注册" hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) try: #一切都ok时 new_user = models.User() new_user.name = username #使用加密密码 new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.pet_type = pet_type new_user.intro = intro #先保存除头像外的数据 new_user.save() except Exception as e: print('保存新用户数据失败:', e) else: print('保存除头像外的新用户数据成功!') #查询新用户在数据库中id是多少 new_id = new_user.id #保存默认头像 传入新用户id save_default_photo(new_id, new_user) #认证注册邮箱 code = make_confirm_string(new_user, 'ConfirmString') try: send_email(email, code, 'register') except Exception as e: message = "邮件发送失败,请联网或换一个邮箱重新注册" print('注册拦截异常') #删除数据库中才保存的信息 models.User.objects.filter(name=username).delete() #返回注册界面 hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) message = "请前往注册邮箱,进行邮箱认证~" #跳转到等待邮件确认页面 return render(request, 'login/confirm.html', locals()) #如果验证不成功 hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() hashkey = CaptchaStore.generate_key() image_url = captcha_image_url(hashkey) return render(request, 'login/register.html', locals())
def register(request): register_form_mandatory = [ "username", "password1", "password2", "first_name", "last_name", "email", "phone", "univ", "major", ] if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = "Please check your input" if register_form.is_valid(): username = register_form.cleaned_data.get('username') first_name = register_form.cleaned_data.get('last_name') last_name = register_form.cleaned_data.get('first_name') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') phone = register_form.cleaned_data.get('phone') univ = register_form.cleaned_data.get('univ') major = register_form.cleaned_data.get('major') classchoice1 = register_form.cleaned_data.get('classchoice1') classchoice2 = register_form.cleaned_data.get('classchoice2') classchoice3 = register_form.cleaned_data.get('classchoice3') classchoice4 = register_form.cleaned_data.get('classchoice4') year_in_school = register_form.cleaned_data.get('year_in_school') gender = register_form.cleaned_data.get('gender') if password1 != password2: message = 'Passwords do not match!' return render(request, 'login/register.html', locals()) else: same_name_user = models.User.objects.filter(name=username) if same_name_user: message = 'Username already exists!' return render(request, 'login/register.html', locals()) same_email_user = models.User.objects.filter(email=email) if same_email_user: message = 'Email account already in use!' return render(request, 'login/register.html', locals()) new_user = models.User() new_user.name = username new_user.first_name = first_name new_user.last_name = last_name new_user.password = hash_code(password1) new_user.email = email new_user.phone = phone new_user.univ = univ new_user.major = major new_user.year_in_school = year_in_school new_user.classchoice1 = classchoice1 new_user.classchoice2 = classchoice2 new_user.classchoice3 = classchoice3 new_user.classchoice4 = classchoice4 new_user.gender = gender new_user.save() return redirect('/login/') else: print("not valid") return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())