def sign_up(): """Registration form.""" form = SignUpForm() if form.validate_on_submit(): user = User.fetch_by_email(form.primary_email.data) if user: form.add_error('email', 'User with such e-mail address already exists.') else: user = User() with db.transaction as session: user.name = form.name.data user.password = form.password.data session.add(user) with db.transaction: user.primary_email = form.primary_email.data return redirect(url_for('sign_in')) return render_template('sign_up.html', form=form)