Python MongoDB JSON 模式验证器 "unresolved reference"

Python MongoDB JSON schema validator "unresolved reference"

我对 Python 和 MongoDB 都比较陌生,我正在使用 python 设置一个 MongoDB 数据库并创建一个带有模式验证的集合。但是,当我按照 MongoDB 文档中指定的方式创建集合时,如下所示:

db.create_collection("collection", {
        validator: {
            "$schema": "schema_stuff",
            "property1":"..."
        }

Pycharm 抛出错误提示:"Unresolved reference 'validator' "

我怀疑这可能与我的导入有关,但我不确定。

from pymongo import MongoClient

知道为什么会这样吗?

发生这种情况是因为您尝试放入验证器的是一个字典,而 validator 应该是一个 variable/object 而 Python 不知道。正确的是 'validator'"validator" 而不是 validator.

使用验证器创建集合的正确查询应该是这样的:

validator = {'validator': {'your validation stuff'}}    
db.create_collection("collection", validator=validator)

或者像这样:

db.create_collection("collection", validator={'validator': 'your validation stuff'})