def index(request): if request.method == 'POST': if 'register_form' in request.POST: user_register = UserRegisterForm(request.POST) if user_register.is_valid(): User.objects.create_user(username=user_register.cleaned_data['username'], email=user_register.cleaned_data['email'], password=user_register.cleaned_data['password'], #tipo=user_register.cleaned_data['tipo'], ) LogIn(request, user_register.cleaned_data['username'], user_register.cleaned_data['password']) return redirect('home') if 'login_form' in request.POST: login_form = LoginForm(request.POST) if login_form.is_valid(): LogIn(request, login_form.cleaned_data['username'], login_form.cleaned_data['password']) user = User.objects.get(username = login_form.cleaned_data['username']) #user = User.objects.filter(request.user.username == login_form.cleaned_data['username']) return redirect('/') user_register = UserRegisterForm() login_form = LoginForm() return render(request, 'index.html', {'user_register': user_register, 'login_form': login_form })
def user_register(request): if request.method == 'GET': return render(request, 'user_register.html') else: user_reform = UserRegisterForm(request.POST) if user_reform.is_valid(): username = user_reform.cleaned_data['username'] password = user_reform.cleaned_data['password'] password1 = user_reform.cleaned_data['password1'] user = UserProfile.objects.filter(username=username) if user: return render(request, 'user_register.html', {'msg': '该用户名已存在'}) else: if password == password1: userprofile = UserProfile() userprofile.username = username hash_password = make_password(password) userprofile.password = hash_password userprofile.save() return redirect(reverse('users:user_login')) else: return render(request, 'user_register.html', {'msg': '两次输入的密码不一致'}) else: print(user_reform.errors) return render(request, 'user_register.html', {'user_reform': user_reform})
def register(request): if request.method == 'GET': return render(request, 'register.html') if request.method == 'POST': #校验页面中传递的参数,是否填写完整 # username=request.POST.get('username') # 将request.POST的内容交给Form校验,得到一个form # 表单验证,是否有效 # 验证通过后,使用自定义Users.objects.create form = UserRegisterForm(request.POST) #is_valid()判断表单是否有效 if form.is_valid(): User.objects.create(username=form.cleaned_data['user_name'], password=make_password( form.cleaned_data['pwd']), email=form.cleaned_data['email']) #注册成功 #实现跳转 return HttpResponseRedirect(reverse('users:login')) # return render(request,'register.html') # else: # return render(request,'register.html') # 如果校验不通过,页面跳转到注册页面,并且返回form,from里包含from.errors信息,可以在输入框上面显示错误信息 else: return render(request, 'register.html', {'form': form})
def index(request): if request.method == 'POST': if 'register_form' in request.POST: user_register = UserRegisterForm(request.POST) if user_register.is_valid(): User.objects.create_user( username=user_register.cleaned_data['username'], email=user_register.cleaned_data['email'], password=user_register.cleaned_data['password'], #tipo=user_register.cleaned_data['tipo'], ) LogIn(request, user_register.cleaned_data['username'], user_register.cleaned_data['password']) return redirect('home') if 'login_form' in request.POST: login_form = LoginForm(request.POST) if login_form.is_valid(): LogIn(request, login_form.cleaned_data['username'], login_form.cleaned_data['password']) user = User.objects.get( username=login_form.cleaned_data['username']) #user = User.objects.filter(request.user.username == login_form.cleaned_data['username']) return redirect('/') user_register = UserRegisterForm() login_form = LoginForm() return render(request, 'index.html', { 'user_register': user_register, 'login_form': login_form })
def post(self, *args, **kwargs): form = UserRegisterForm(self.request.POST) if form.is_valid(): try: first_name = self.request.POST['first_name'] last_name = self.request.POST['last_name'] email = self.request.POST['email'] user = form.save() token = user.generate_token() url = self.request.build_absolute_uri( reverse('verify_token', args=(token.token, ))) html_content = render_to_string( 'account/dummy.html', { 'url': url, 'full_name': first_name + " " + last_name, 'email': email }) subject, from_email, to = 'Atrax Verification Email', settings.EMAIL_HOST_USER, [ email ] text_content = "yes" msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() return HttpResponseRedirect(reverse('verify_email')) except IntegrityError as e: context = { 'error_messages': 'Something went wrong please try again.', } return render(self.request, self.template_name, context) return render(self.request, self.template_name, {'form': form})
def test_register_form_password_empty_failure(self): self.user_data["password1"] = "" form = UserRegisterForm(data=self.user_data) self.assertFalse(form.is_valid()) self.assertEqual(form.errors["password1"][0], "This field is required.")
def test_register_form_lastname_failure(self): self.user_data["last_name"] = "" form = UserRegisterForm(data=self.user_data) self.assertFalse(form.is_valid()) self.assertEqual(form.errors["last_name"][0], "This field is required.")
def test_register_form_email_exist_failure(self): self.user_data["email"] = "*****@*****.**" form = UserRegisterForm(data=self.user_data) self.assertFalse(form.is_valid()) self.assertEqual(form.errors["email"][0], "User with this Email address already exists.")
def post(self, request, *args, **kwargs): print(request.POST.get('username')) print(request.POST.get('password')) print(request.POST.get('password2')) print(request.POST.get('phone')) print(request.POST.get('email')) # 校验页面中传递的参数,是否填写完整 form = UserRegisterForm(request.POST) if form.is_valid(): # 获取校验后的用户名和密码 username = form.cleaned_data.get('username') password = form.cleaned_data.get('password') phone = form.cleaned_data.get('phone') email = form.cleaned_data.get('email') if len(User.objects.filter(username= username,password=password)) == 0: user = User() user.username = username user.set_password(password) user.phone = phone user.email = email user.save() store_userimg(user.id) # 实现跳转 return HttpResponseRedirect('/users/login/') return render(request, 'users/register.html', locals()) else: print('验证失败', form.errors) return render(request, 'users/register.html', locals())
def test_username_anonymous_is_not_allowed(self): """Test whether email field invalidates dummy emails and raises a validation error""" field = 'username' form = UserRegisterForm(data={field: 'anonymous'}) self.assertFalse(form.is_valid()) self.assertEqual(form.has_error(field, code='invalid'), True, msg='This username is already taken')
def post(self, request): register_form = UserRegisterForm(request.POST) if register_form.is_valid(): username = request.POST.get('username') email = request.POST.get('email') if UserProfile.objects.filter(username=username): return render(request, 'users/reg.html', { 'msg': '用户名已存在', 'register_form': register_form }) if UserProfile.objects.filter(email=email): return render(request, 'users/reg.html', { 'msg': '邮箱已存在', 'register_form': register_form }) password = request.POST.get('password') types = request.POST.get('type') print(types) user = UserProfile() user.username = username user.password = make_password(password=password) user.email = email user.usertype = types user.is_active = 0 user.save() send_register_email(email, send_type='register') return render(request, 'users/login.html') return render(request, 'users/reg.html', {'register_form': register_form})
def test_register_form_valid_data(self): form = UserRegisterForm(data={ 'username': '******', 'email': '*****@*****.**' }) self.assertTrue(form.is_valid())
def post(self, request): user_register_form = UserRegisterForm(request.POST) if user_register_form.is_valid(): email = user_register_form.cleaned_data['email'] password = user_register_form.cleaned_data['password'] user_list = UserProfile.objects.filter( Q(username=email) | Q(email=email)) if user_list: return render(request, 'users/register.html', {'msg': '用户已经存在'}) else: a = UserProfile() a.username = email a.set_password(password) a.email = email # 进行邮箱验证激活 # 发送邮箱验证码 if send_email_code(email, 1): a.save() return HttpResponse('情尽快前往邮箱激活账号') else: return HttpResponse('注册失败') # return redirect('/users/user_login') else: return render(request, 'users/register.html', {'user_register_form': user_register_form})
def index(request): if request.method == 'POST': if 'myForm' in request.POST: user_register = UserRegisterForm(request.POST) if user_register.is_valid(): User.objects.create_user(username=user_register.cleaned_data['username'], email=user_register.cleaned_data['email'], password=user_register.cleaned_data['password']) LogIn(request, user_register.cleaned_data['username'], user_register.cleaned_data['password']) return redirect('home') if 'login_form' in request.POST: login_form = LoginForm(request.POST) if login_form.is_valid(): LogIn(request, login_form.cleaned_data['username'], login_form.cleaned_data['password']) user = User.objects.get(username = login_form.cleaned_data['username']) #user = User.objects.filter(request.user.username == login_form.cleaned_data['username']) return redirect('/') # casas = Casas.objects.order_by('fecha_publicacion')[:3] # bodegas = Bodega.objects.order_by('fecha_publicacion')[:3] # inflables = Inflable.objects.order_by('fecha_publicacion')[:3] # combis = Combi.objects.order_by('fecha_publicacion')[:3] user_register = UserRegisterForm() login_form = LoginForm() return render(request, 'index.html', {'user_register': user_register, 'login_form': login_form})
def test_register_form_valid(self): test_data = self.register_form_data['valid'] form_data = {k: test_data[k] for k in self.register_form_fields} form = UserRegisterForm(data=form_data) assert form.is_valid() == test_data['valid']
def user_register(request): if request.method == 'GET': # 此处实例化forms类,目的不是为了验证,而是为了使用验证码 user_register_form = UserRegisterForm() return render(request, 'users/register.html', {'user_register_form': user_register_form}) else: # 获取form注册表单数据 user_register_form = UserRegisterForm(request.POST) if user_register_form.is_valid(): # 验证注册的邮箱与密码数据 # 提取提交的数据 email = user_register_form.cleaned_data['email'] password = user_register_form.cleaned_data['password'] # 到数据库查询注册的账号是否存在 user_list = UserProfile.objects.filter( Q(username=email) | Q(email=email)) if user_list: # 注册的账号存在 return render(request, 'users/register.html', {'mgs': '用户已经存在!!!'}) else: # 注册的账号不存在 user = UserProfile() user.username = email user.set_password(password) user.email = email user.save() send_mail_code(email, 1) return HttpResponse("请尽快登陆你的邮件进行账号激活,否则无法登陆...") # return redirect(reverse('index')) else: # 表单数据验证不合法 return render(request, 'users/register.html', {'user_register_form': user_register_form})
def register(request): """Register a non-logged in user""" # Redirect to the homepage in case user is logged in. if request.user.is_authenticated: messages.warning(request, 'You are already logged in!') return redirect('ideas:home') template_name = 'users/register.html' context = {} if (request.method == 'POST'): context['form'] = form = UserRegisterForm(request.POST) if (form.is_valid()): user = form.save() username = form.cleaned_data.get('username') messages.success( request, f'Account created for {username}. You will now be able to Log In!' ) log_in_user(request, user) return redirect('ideas:home') else: # On GET request return a new form context['form'] = UserRegisterForm() context['meta'] = Meta(title='Register | IdeaFare', description='Register on IdeaFare', keywords=meta_home.keywords + ['register']) return render(request, template_name, context=context)
def curier_register(request): if request.method=="POST": user_form = UserRegisterForm(data=request.POST) curier_form=CurierRegisterForm(data=request.POST,files=request.FILES) print(curier_form) if user_form.is_valid() and curier_form.is_valid(): new_user= user_form.save() new_curier = Curier.objects.create( user=new_user, date_of_birth=curier_form.cleaned_data.get('date_of_birth'), photo=request.FILES['photo'], experience=curier_form.cleaned_data.get('experience'), phone=curier_form.cleaned_data.get('phone'), ) new_curier.save() text=new_user.username+" "+str(curier_form.cleaned_data.get('date_of_birth'))+" "+str(curier_form.cleaned_data.get('phone')) send_mail("new curier",text,'*****@*****.**',['*****@*****.**'],fail_silently=False) return redirect("Home") return HttpResponse("Error") else: form_user = UserRegisterForm() curier_user = CurierRegisterForm() cxt={ "register_form":form_user, "curier_form":curier_user, } return render(request,"curiers/register.html",context=cxt)
def post(self, request): form = UserRegisterForm(request.POST) if form.is_valid(): cd = form.cleaned_data #Так теперь мы создаем новго пользователя и создаем также рандомные данные для отправки random_string = create_random_string(40) user = SiteUsers.objects.create(login=cd['login'], password=cd['password'], email=cd['email'], original_name=cd['original_name'], surname=cd['surname']) code = UserOneCodes.objects.create(user=user, code=random_string) #Так теперь вот тут отправляем данные на почту, чтобы по ссылке мог зарегаться data = "Для активации вашего аккаунта на IP Telecom пожалуста пройдите по ссылке http://192.168.1.103:8080/user/activation?code={0}".format( random_string) send_mail('Welcome!', data, "Yasoob", [ cd['email'], ], fail_silently=False) return HttpResponse('Все нормально') else: return render(request, 'user_registration_form.html', {'form': form})
def test_UserRegisterForm_no_data(self): """Testing UserRegisterForm Class - Not Successfull , form not valid""" form = UserRegisterForm(data={}) self.assertFalse(form.is_valid()) self.assertEquals(len(form.errors), 4)
def test_register_form_email_wrong_failure(self): self.user_data["email"] = "test" form = UserRegisterForm(data=self.user_data) self.assertFalse(form.is_valid()) self.assertEqual(form.errors["email"][0], "Enter a valid email address.")
def test_register_form_bad_email(self): test_data = self.register_form_data['bad_email'] form_data = {k: test_data[k] for k in self.register_form_fields} form = UserRegisterForm(data=form_data) assert form.has_error('email') == True assert form.is_valid() == test_data['valid']
def test_register_form_duplicate(self): test_data = self.register_form_data['duplicate'] form_data = {k: test_data[k] for k in self.register_form_fields} form = UserRegisterForm(data=form_data) assert form.has_error('username') == True assert form.is_valid() == test_data['valid']
def test_form_email_invalid(self): data = {'username': '******', 'email': '', 'password1': 'tests321', 'password2': 'tests321' } form = UserRegisterForm(data=data) self.assertFalse(form.is_valid())
def test_user_already_exists(self): data = { 'username': '******', 'password1': 'test123', 'password2': 'test123', } form = UserRegisterForm(data) self.assertFalse(form.is_valid())
def test_valid_user_register(self): form = UserRegisterForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'madman000', 'password2': 'madman000' }) self.assertTrue(form.is_valid())
def test_form_different_passwords(self): data = {'username': '******', 'email': '*****@*****.**', 'password1': 'tests321', 'password2': 'tests123' } form = UserRegisterForm(data=data) self.assertFalse(form.is_valid())
def test_form_password_too_short(self): data = {'username': '******', 'email': '*****@*****.**', 'password1': 'test', 'password2': 'test' } form = UserRegisterForm(data=data) self.assertFalse(form.is_valid())
def test_form_is_valid(self): data = {'username': '******', 'email': '*****@*****.**', 'password1': 'tests321', 'password2': 'tests321' } form = UserRegisterForm(data=data) self.assertTrue(form.is_valid())
def test_no_passwords_register(self): form = UserRegisterForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': '', 'password2': '' }) self.assertFalse(form.is_valid()) self.assertEquals(len(form.errors), 2)
def test_user_register_form_valid(self, db): form = UserRegisterForm( data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'username1password', 'password2': 'username1password', }) assert form.is_valid() == True
def test_username_spaces_mail_register(self): form = UserRegisterForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'madman000', 'password2': 'madman000' }) self.assertFalse(form.is_valid()) self.assertEquals(len(form.errors), 1)
def post(self, request): form = UserRegisterForm(request.POST) if form.is_valid(): form_data = form.data user = User.objects.create_user( form_data['name'], form_data['email'], form_data['password']) profile = Profile(name = form_data['name'], email = form_data['email'], fone = form_data['fone'], company_name = form_data['company_name'], user = user) profile.save() return redirect('profileIndex') return render(request, self.template_name, {'form' : form})