有条件地忽略wtforms-json中补丁请求的必填字段

时间:2019-01-28 23:07:47

标签: validation wtforms wtforms-json

我有一个REST API,希望能够处理补丁请求。

class MyForm(flask_wtf.FlaskForm):
    fieldA = wtforms.DecimalField('fieldA',
                                       places=2,
                                       validators=[wtforms.validators.InputRequired(),
                                            wtforms.validators.number_range(min=0, message='Amount must be greater than zero.')
                                            ])
    fieldB = wtforms.StringField('fieldB',
                                validators=[wtforms.validators.InputRequired(),
                                            wtforms.validators.Length(max=100)
                                            ])

我有一个(简化的)形式如上所述。如果未将字段作为请求的一部分提供,则可以忽略表单中的字段吗?因此,例如,如果我只收到将被验证的fieldA而忽略fieldB,但是如果相反接收到fieldB为null,则返回false。

我熟悉自定义验证器,也许可以与它们一起使用,但是我想确保没有某种标准的验证方法会丢失。

0 个答案:

没有答案