我想用WTForms创建一个表单,其中一个字段是一个带有特殊(自定义)验证的SelectField,它(例如)检查当前值是否无效(即它不是已定义选项的实例)。在
我在the documentation中读到,正确的方法是根据需要重写pre_validate
或{
所以我的方法是:
1-我创建了一个名为MySelectForm的新字段:
class MySelectField(SelectField):
def post_validate(self, form, validation_stopped):
"""overrides post validation"""
#Here is my custom validation
2-我使用此字段而不是表单中的原始字段
我不能理解的是:如果像我在文档中读到的那样,post_validate
接受输入“字段所属的形式”,那么我如何访问作为MySelectField
实例的字段的当前值?在
换句话说,有人能举例说明如何重写pre_validate
或{
您正在将
self
传递给该方法,因此您的field对象可用。它继承了WTForms的Field
类,因此您应该可以使用field.data
。它包含"resulting (sanitized) value of calling either of the process methods."相关问题 更多 >
编程相关推荐