【问题标题】:Specify detailed format of validation in Flask wtforms在 Flask wtforms 中指定详细的验证格式
【发布时间】:2017-06-18 10:47:01
【问题描述】:

我创建了一个表单,目前正在验证 DataRequired 和 Length。

class MainSearch(Form):
        discnumber = StringField('discnumber', validators=[DataRequired(), Length(min=7, max=7)])

我想更进一步并验证条目以使其匹配特定格式。具体来说,如果用户输入的光盘编号不是以字母 DA 开头后跟 5 位数字,我希望它会引发错误。

例如,这些是可接受格式的示例:

DA26727

DA00056

DA78786

虽然这些是不可接受的:

DA890899(即它有 6 位而不是 5 位)

D989089(不包含“DA”前缀)

我没有在网上找到任何类似的例子。这可能与 wtforms 吗?如果 s 最适合哪种类型的验证器?

谢谢

【问题讨论】:

    标签: python validation flask wtforms flask-wtforms


    【解决方案1】:

    使用Regexp validator

    discnumber = StringField('discnumber', validators=[DataRequired(), Regexp('^DA[0-9]{5}$')])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-09
      • 2014-02-05
      • 2018-10-23
      • 1970-01-01
      • 1970-01-01
      • 2016-05-30
      • 1970-01-01
      • 2014-01-21
      相关资源
      最近更新 更多