如何使用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()验证列表长度。
