从Marshmallow#validation,我知道我可以在模式中的特定字段上注册验证器。如果验证器失败,则会出现以下错误:
data, errors = MySchema().load({"some":"data})
将包含验证器失败的任何字段的错误信息:
errors
# => some error message for the field that failed
我的问题:是否可以在架构级别(而不是在单个字段级别)进行验证并且仍然以上述方式返回错误?
作为一个任意示例,假设我想验证您是否尝试了MySchema().load()
n 个不同的键。我目前有一个@pre_load
方法可以检查输入的结构以及raise ValidationError('message')
数据是否格式错误,但我想像字段验证一样将其作为 result.errors 返回。我有哪些选择?