Python Marshmallow@validates未引发错误

Python Marshmallow@validates未引发错误,python,python-3.x,flask,marshmallow,Python,Python 3.x,Flask,Marshmallow,全部。我正在编写API项目,使用Flask作为主要框架,使用Marshmallow包序列化JSON数据。 我想创建player实例,但在创建之前验证他的昵称。 视图: 模式: class PlayerSchema(Schema): nickname = fields.Str(required=True) ... @validates('nickname') def validate_nickname(self, value): raise Valida

全部。我正在编写API项目,使用Flask作为主要框架,使用Marshmallow包序列化JSON数据。 我想创建player实例,但在创建之前验证他的昵称。 视图:

模式:

class PlayerSchema(Schema):

    nickname = fields.Str(required=True)
...

    @validates('nickname')
    def validate_nickname(self, value):
        raise ValidationError('Error!!!')

这是因为在棉花糖2中默认情况下,模式不会在出错时出现

您需要传递
strict
元参数:

class PlayerSchema(Schema):

    nickname = fields.Str(required=True)

    class Meta:
        strict = True
在棉花糖3中,模式总是在出错时出现

class PlayerSchema(Schema):

    nickname = fields.Str(required=True)

    class Meta:
        strict = True