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'})
我对 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'})