lec*_*tif 5 python validation wtforms
我有WTForms validators.optional()的问题,因为如果字段为空(WTForms docs)它会停止验证链.这意味着验证不会继续使用自定义函数,这可能导致类型错误.
代码示例:
class MyForm(form):
myfield = TextField('My Field', [validators.Optional()])
def validate_myfield(form, field):
field.data = unicode(field.data)
Run Code Online (Sandbox Code Playgroud)
是否有任何方法或解决方法来继续验证链,即使可选内容为空,也许使用自定义验证器?
如果我以错误的方式接近问题,那么正确的方向提示会有所帮助!
您只需更改验证器的列出顺序即可.如果您的自定义验证器放在可选验证器之前,它应该提供所需的效果,因为它们是按顺序进行评估的.