File size: 1,528 Bytes
c7947de 68f763b c7947de |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField
from wtforms.validators import DataRequired, Length, EqualTo, ValidationError
from models import User
class RegistrationForm(FlaskForm):
username = StringField('Tên đăng nhập', validators=[
DataRequired(message='Vui lòng nhập tên đăng nhập'),
Length(min=3, max=20, message='Tên đăng nhập phải từ 3-20 ký tự')
])
password = PasswordField('Mật khẩu', validators=[
DataRequired(message='Vui lòng nhập mật khẩu'),
Length(min=6, message='Mật khẩu phải có ít nhất 6 ký tự')
])
confirm_password = PasswordField('Xác nhận mật khẩu', validators=[
DataRequired(message='Vui lòng xác nhận mật khẩu'),
EqualTo('password', message='Mật khẩu xác nhận không khớp')
])
submit = SubmitField('Đăng ký')
def validate_username(self, username):
user = User.query.filter_by(username=username.data).first()
if user:
raise ValidationError('Tên đăng nhập đã tồn tại. Vui lòng chọn tên khác.')
class LoginForm(FlaskForm):
username = StringField('Tên đăng nhập', validators=[
DataRequired(message='Vui lòng nhập tên đăng nhập')
])
password = PasswordField('Mật khẩu', validators=[
DataRequired(message='Vui lòng nhập mật khẩu')
])
submit = SubmitField('Đăng nhập')
|