我们可以对json模式的属性字段应用检查吗?

时间:2019-05-29 11:29:43

标签: python json

我想验证我的json。

如果存在 is_dummy 字段并将其设置为False,则必须设置 username password 字段(如果已设置)不会True

但是如果不存在 is_dummy ,这也是有效的。

{
    "type": "object",
    "properties": {
        "name": {"type": "string", "minLength": 1},
        "username": {"type": "string", "minLength": 1},
        "password": {"type": "string", "minLength": 1},
        "is_dummy": {"type": "boolean"},
    },
    "if": {"properties": {"is_dummy": {"const": False}}},
    "then": {"required": ["username", "password"]}
}

1 个答案:

答案 0 :(得分:1)

您可以使用以下命令检查is_dummy是否在json中:

if 'is_dummy' in data['properties'].keys():
    # Do you want

要检查值是否为False,可以使用:

if data['properties']['is_dummy'] == False:
    # Do what you want

您可以使用相同的逻辑来检查您的用户名/密码字段