如何验证棉花糖中特定类型的元素列表?



我在烧瓶中有一个 POST 端点,它接受一个包含键的 json 数据 -collections有一个列表作为值,而值又包含包含特定键的字典列表。

我正在尝试验证request.json但找不到合适的方法。

下面是棉花糖架构的代码:

class RowSchema(Schema):
nationalCustomerId = fields.Int(required=True)
storeId = fields.Int(required=True)
categoryId = fields.Int(required=True)
deliveryDate = fields.Date(required=True, format="%Y-%m-%d")
class RequestSchema(Schema):
combinations = fields.List(RowSchema)

我试图用RequestSchema来验证request.json.

我发送request.json如下所示:

{
"combinations": [
{
"nationalCustomerId": 1,
"storeId": 1,
"categoryId": 1,
"deliveryDate": "2020-01-20"
}
]
}

我哪里犯了错误?

这是我得到的错误:

值错误:列表元素必须是 的子类或实例 marshmallow.base.FieldABC.

您缺少fields.List内部的fields.Nested

class RowSchema(Schema):
nationalCustomerId = fields.Int(required=True)
storeId = fields.Int(required=True)
categoryId = fields.Int(required=True)
deliveryDate = fields.Date(required=True, format="%Y-%m-%d")
class RequestSchema(Schema):
combinations = fields.List(fields.Nested(RowSchema))

相关内容

  • 没有找到相关文章

最新更新