欢迎访问宙启技术站
智能推送

如何使用marshmallow.validateLength()验证列表长度

发布时间:2024-01-05 05:54:46

要使用marshmallow.validate.Length()验证列表长度,需要使用Marshmallow库和其validate模块。以下是一个示例代码:

from marshmallow import Schema, fields, validate

class MySchema(Schema):
    my_list = fields.List(fields.Str(), validate=validate.Length(max=5))

# 创建一个Schema实例
schema = MySchema()

# 要验证的数据
data = {"my_list": ["apple", "banana", "orange", "grape"]}

# 验证数据
errors = schema.validate(data)

# 打印验证结果
if errors:
    print(errors)
else:
    print("Data is valid.")

在上面的示例中,我们定义了一个名为my_list的字段,它是一个字符串的列表。我们使用validate.Length()方法验证列表的长度,max参数用于指定列表的最大长度。在此示例中,我们将max设置为5,因此如果列表长度超过5,将会触发验证错误。

注意:为了在验证期间抛出异常而不是返回错误字典,请使用schema.validate()方法。然后,您可以使用try-except块来捕获异常并执行适当的处理操作,例如打印错误消息或回滚事务。

希望这个例子能够帮助您理解如何使用marshmallow.validate.Length()验证列表长度。