Python MongoDB JSON模式验证程序;未解析引用“;
我对Python和MongoDB都比较陌生,我正在使用Python设置MongoDB数据库并创建一个带有模式验证的集合。但是,当我创建MongoDB文档中指定的集合时,如下所示:Python MongoDB JSON模式验证程序;未解析引用“;,python,mongodb,pycharm,jsonschema,json-schema-validator,Python,Mongodb,Pycharm,Jsonschema,Json Schema Validator,我对Python和MongoDB都比较陌生,我正在使用Python设置MongoDB数据库并创建一个带有模式验证的集合。但是,当我创建MongoDB文档中指定的集合时,如下所示: db.create_collection("collection", { validator: { "$schema": "schema_stuff", "property1":"..." } Pycharm抛出一个错误:“未解析的引用‘
db.create_collection("collection", {
validator: {
"$schema": "schema_stuff",
"property1":"..."
}
Pycharm抛出一个错误:“未解析的引用‘验证器’”
我怀疑这可能与我的进口有关,但我不确定
from pymongo import MongoClient
知道为什么会发生这种情况吗?之所以会发生这种情况,是因为您试图放入validator的是一个字典,
validator
应该是Python不知道的变量/对象。正确的做法是使用'validator'
或“validator”
而不是validator
使用验证程序创建集合的正确查询应如下所示:
validator = {'validator': {'your validation stuff'}}
db.create_collection("collection", validator=validator)
db.create_collection("collection", validator={'validator': 'your validation stuff'})
或者像这样:
validator = {'validator': {'your validation stuff'}}
db.create_collection("collection", validator=validator)
db.create_collection("collection", validator={'validator': 'your validation stuff'})
之所以会发生这种情况,是因为您试图放入验证器的是一个字典,
validator
应该是一个Python不知道的变量/对象。正确的做法是使用'validator'
或“validator”
而不是validator
使用验证程序创建集合的正确查询应如下所示:
validator = {'validator': {'your validation stuff'}}
db.create_collection("collection", validator=validator)
db.create_collection("collection", validator={'validator': 'your validation stuff'})
或者像这样:
validator = {'validator': {'your validation stuff'}}
db.create_collection("collection", validator=validator)
db.create_collection("collection", validator={'validator': 'your validation stuff'})