我正在尝试在 Python 中使用 Cerberus 来验证一些数据。
我发现对于“布尔”类型,验证器总是返回 True,如下所示:
import cerberus
bool_schema = {'name': {'type': 'boolean', 'required': True}}
cerberus.schema_registry.add('bool_schema', bool_schema)
v = cerberus.Validator({'name': {'schema': 'bool_schema'}})
test1 = {'name': 'a'}
test2 = {'name': 0}
print(v.validate(test1))
print(v.validate(test2))
上面的代码打印了两个 True。
实际上,我需要验证该值是 True 还是 False(Python 中的 bool 类型),其他值不应通过验证器。