我在下面的代码中努力验证StringField。 电子邮件验证和日期验证功能正常。但是,当我输入的字符串超出len范围的姓/名时,不会抛出任何错误。 所有导入都是正确的。
enter image description here您能帮我吗?
EmailForm(FlaskForm)类:
email = EmailField('Email', [validators.Email()])
postcode = StringField('Postcode')
surname = StringField('Surname', [validators.Length(3,45)])
firstname = StringField('First Name', [validators.Email(3,45)])
dateofbirth = DateField("Date Of Birth", default=date.today(), format='%d/%m/%Y')
submit = SubmitField('GO')
答案 0 :(得分:0)
根据wtforms
文档,您需要在validators.Length
上指定'min'和'max'值。
在您的情况下,它应该看起来像这样:
surname = StringField('Surname', [validators.Length(min=3, max=45)])
firstname = StringField('First Name', [validators.Length(min=3, max=45)])
您可以尝试一下,让我知道您是否仍然遇到问题吗?
编辑:我刚刚意识到您的firstname
是validators.Email
而不是validators.Length
,所以我在上面编辑了我的代码。