1
作为一部分for-in循环使用Python中pymongo我想添加一些嵌套的文件/一个linktype
场是成为links
领域内的内部对象: 无论是links
场或linktype
字段在第一个这样的条目被添加之前存在。
这是什么命令?
这里是添加链接前一个项目:
item = {
"_id" : ObjectId("5067c26b9d595266e25e825a"),
"name": "a Name"
}
并添加typeA
类型的一个链接后:
toType = "typeA"
to_link = {"_id" : ObjectId("5067c26b9d595266e25e825b"), "property":"value"}
{
"_id" : ObjectId("5067c26b9d595266e25e825a"),
"name": "a Name",
"links" : {
"typeA":{
{"_id" : ObjectId("5067c26b9d595266e25e825b"), "property":"value"}
}
}
}
我曾尝试:
db.collection.update({"name":"a Name"},{{"links":{"$addToSet":{toType:to_link}}})
它不工作。 如果我只是用:
db.collection.update({"name":"a Name"},{ {"$addToSet":{toType:to_link}})
的作品,但是这不是我想要的。
我才意识到我其实是想'typeA'是对象的数组。所以使用你的答案我已经意识到我正在寻找:'from_collection.update({“ID”:fromID},{“$ addToSet”:{'links。'+ toType:to_link}})'。尽管你已经回答了我的问题。 – johowie