pymongo中针对指定集合更新validator规则

发布时间 2023-10-11 10:16:48作者: 费弗里

问题描述:
  针对mongo中已创建的集合,更新validator验证器规则

  • 解决方法

  在确保pymongo中所使用的用户对目标数据库具有dbAdmin之类的管理权限的前提下(若无权限,可在mongo中执行db.grantRolesToUser("目标用户名", [{ role: "dbAdmin", db: "目标数据库名" }])进行权限添加),利用command()执行collMod命令进行更新,例如:

projects_db.command(
    'collMod',
    '目标集合名称',
    validator={
        '$jsonSchema': {
            'bsonType': 'object',
            'required': [
                'field1', 'field2'
            ]
        }
    }
)