ฉันมีคลาส wtform ซึ่งมีลักษณะดังนี้:
class Registration(Form):
email = StringField('Email', validators=[Required(), Email()])
username = StringField('Username', validators=[Required()])
name = StringField('Name', validators=[Required()])
password = PasswordField('Password',
validators=[
Required(),
EqualTo('confirm_password', message='Your passwords did not match'),
Length(min=6, max=20, message='passwords must be longer than 6 characters')
])
confirm_password = PasswordField('Confirm Password', validators=[Required()])
submit = SubmitField('Register')
def validate_email(self, field):
if User.query.filter_by(email=field.data).first():
raise ValidationError('Email already registered')
def validate_username(self, field):
if User.query.filter_by(username=field.data).first():
raise ValidationError('Username already exists')
ฉันคิดว่า WTForms ไม่มีรูปแบบการตรวจสอบแบบอินไลน์แบบเรียลไทม์ที่ส่วนหน้า ซึ่งเป็นเรื่องปกติ แต่ฉันสงสัยว่ามีวิธีใดที่จะตรวจสอบความถูกต้องแบบเรียลไทม์โดยคว้าตัวตรวจสอบความถูกต้องสำหรับฟิลด์และใช้งานในบางฟิลด์ได้หรือไม่ จาวาสคริปต์ชนิดหนึ่ง
เช่น ช่องรหัสผ่าน รหัสผ่านต้องยาวเกิน 6 ตัวอักษร ในกรณีนี้ ฉันต้องการแสดงแบบฟอร์มการตรวจสอบขณะที่พวกเขาพิมพ์:
อย่างไรก็ตาม เมื่อพวกเขาพิมพ์รหัสผ่านที่มีความยาวถูกต้อง มันจะแสดงสิ่งนี้:
ปัญหาที่ฉันมีคือการเข้าถึงข้อกำหนดและผู้ตรวจสอบความถูกต้องของ wtform ตามที่อยู่บนหน้า เป็นไปได้ไหมที่จะทำ?