def signup(): """ User sign-up page. GET requests serve sign-up page. POST requests validate form & user creation. """ form = SignupForm() if form.validate_on_submit(): existing_user = User.query.filter_by(email=form.email.data).first() if existing_user is None: user = User(name=form.name.data, email=form.email.data, phone_number=form.number.data) user.set_password(form.password.data) user.set_number(form.number.data) db.session.add(user) db.session.commit() # Create new user login_user(user) # Log in as newly created user return redirect(url_for('main_bp.dashboard')) flash('A user already exists with that email address.') return render_template('signup.jinja2', title='Create an Account.', form=form, template='signup-page', body="Sign up for a user account.")