def signup(request): if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.is_active = False user.save() current_site = get_current_site(request) mail_subject = 'Activate your account.' message = render_to_string( 'account_active_email.html', { 'user': user, 'domain': current_site.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)), 'token': account_activation_token.make_token(user), }) to_email = form.cleaned_data.get('email') email = EmailMessage(mail_subject, message, to=[to_email]) email.send() return HttpResponse( 'Please confirm your email address to complete the registration' ) else: form = SignupForm() return render(request, 'signup.html', {'form': form})
def signup(request): if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): form.instance.username = form.instance.email form.save() raw_password = form.cleaned_data.get('password1') email = form.cleaned_data.get('email') user = authenticate(username=email, password=raw_password) login(request, user) return redirect(settings.LOGIN_REDIRECT_URL) else: form = SignupForm() return render(request, 'signup.html', {'form': form})
def test_SignupForm_valid(self): form = SignupForm(data={'username': "******", 'email': "*****@*****.**", 'password1': "yarik123456789", 'password2': "yarik123456789"}) self.assertTrue(form.is_valid()) record = form.save() self.assertEqual(record.username, "John") self.assertEqual(record.email, "*****@*****.**")
def test_required(self): form = SignupForm() form.process() self.assertFalse(form.validate()) expected = { 'email': [u'This field is required.'], 'identity': [u'This field is required.'], 'password': [u'This field is required.'], 'terms': [u'This field is required.'] } self.assertDictEqual(form.errors, expected)
def test_UserForm_invalid(self): form = SignupForm(data={'username': '', 'email': "false", 'password1': "false", 'password2': 'password'}) self.assertFalse(form.is_valid())