我正在查看 mongo 文档的此页面,因为我找不到任何特定的 pymongo 文档:https://docs.mongodb.com/manual/tutorial/model-tree-structures-with-parent-references/
我可以使用以下命令将文档插入到我的数据库中:
>>> db.categories.insert( { "_id": "MongoDB", "parent": "Databases" } )
'MongoDB'
但是当我到达此部分以使用 .parent 时,它不会被识别并返回错误。
>>> db.categories.find_one( { "_id": "MongoDB" } ).parent
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'parent'
我是否错误地遵循了文档的某些部分,或者是否有某种我不知道的具有父子层次结构的方法?谢谢。
最佳答案
db.categories.find_one
返回一个字典,因此您需要使用正确的获取语义:即:
db.categories.find_one( { "_id": "MongoDB" } )["parent"]
可能最好也添加错误检查:
record = db.categories.find_one( { "_id": "MongoDB" } )
if record:
parent = record["parent"]
在文章中,“父级”是指添加的数据中的父键 - 而不是层次结构中的父节点。
关于python - 使用 pymongo 在 MongoDB 中创建具有父子层次结构的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56791546/