def register(): if current_user.is_authenticated: return redirect(url_for('main.home')) form = RegistrationForm() if form.validate_on_submit(): hashed_password = bcrypt.generate_password_hash( form.password.data).decode('utf-8') user = User(username=form.username.data, email=form.email.data, password=hashed_password) #if valid coach name is filled, then user is a client. if form.coach_name.data != "": coach = User.query.filter_by(username=form.coach_name.data).first() user.coach = coach user.is_client = True db.session.add(user) db.session.commit() flash(f'Account created for {form.username.data}!', 'success') return redirect(url_for('main.home')) return render_template('register.html', title='Register', form=form)