即使验证失败,棉花糖序列化错误也是空的



我正在为我的python Web服务添加棉花糖,主要是为了使用schemas生成OpenAPI文档,但是我也喜欢检查我的API响应序列化的错误。我已经阅读了相关文档,但是我不明白为什么当我序列不完整的对象时看不到错误。

例如,使用以下模式:

class UserResponse(Schema):
    user = fields.Integer(required=True)
    email = fields.Email(required=True)
    name = fields.String(required=True)
    role = fields.String(required=True)
    class Meta:
        strict = True
schema = UserResponse()

验证可以按预期工作:

>>> schema.validate({'user': 1})
ValidationError: {'email': ['Missing data for required field.'], 'role': ['Missing data for required field.'], 'name': ['Missing data for required field.']}

但是序列化返回一个空错误列表:

>>> schema.dump({'user':1})
MarshalResult(data={'user': 1}, errors={})

这应该如何工作吗?如果缺少序列化对象,我希望返回错误。

by Design,在棉花糖中,验证仅在避难所上进行。

请参阅此问题。

相关内容

  • 没有找到相关文章

最新更新