1
1
Fork 0
geistesblitze2/forms.py

35 lines
1.1 KiB
Python

from flask_wtf import FlaskForm
from wtforms import PasswordField, StringField, SubmitField, ValidationError
from wtforms.validators import DataRequired, EqualTo
from models import User
class RegistrationForm(FlaskForm):
username = StringField("Username", validators=[DataRequired()])
password = PasswordField(
"Password",
validators=[DataRequired()],
)
password2 = PasswordField(
"Confirm Password",
validators=[DataRequired(), EqualTo("password", message="Passwords must match.")],
)
submit = SubmitField("Register")
def validate_username(self, field):
if User.query.filter_by(username=field.data).first():
raise ValidationError("Username already in use.")
class LoginForm(FlaskForm):
username = StringField("Username", validators=[DataRequired()])
password = PasswordField("Password", validators=[DataRequired()])
submit = SubmitField("Login")
class IdeaForm(FlaskForm):
name = StringField("Name", validators=[DataRequired()])
description = StringField("Description", validators=[DataRequired()])
submit = SubmitField("Save")