mongodb可以动态附加多少级子文档?
如果我想添加dynamicali,我似乎可以进一步添加一个子文档mongodb可以动态附加多少级子文档?,mongodb,pymongo,Mongodb,Pymongo,如果我想添加dynamicali,我似乎可以进一步添加一个子文档,下面是代码: db.users.update({"pup.cmn.id":id}, {"$addToSet":{"pup.cmn":{"abus":email}}}) 这将导致以下错误: OperationFailure: can't append to array using string field name: cmn 然后,如果我添加位置元素,我会得到以下结果: db.users.update({"pup.cmn.i
,下面是代码:
db.users.update({"pup.cmn.id":id}, {"$addToSet":{"pup.cmn":{"abus":email}}})
这将导致以下错误:
OperationFailure: can't append to array using string field name: cmn
然后,如果我添加位置元素
,我会得到以下结果:
db.users.update({"pup.cmn.id":id}, {"$addToSet":{"pup.$.cmn":{"abus":email}}})
"cmn" :
[
{
"fto" : ObjectId("5190e8a53a5f3a0c102af045")
"id" : "14.05.2013 12:29:53"
},
{
"abus" : "u...@example.com"
}
]
如您所见,它会将其添加到同一级别,我不希望这样,因为应用程序会出错。在撰写本文时(2.4.x)Mongodb似乎没有此功能,有一个问题:
您能用原始文档和您想要的结果样本更新您的问题吗?我想要的只是将abus
放在cmn
下,而不是放在同一级别上。从您的示例来看,这似乎是正在发生的事情。是的,它添加在同一级别上,而不是在它下面:(很抱歉,我不明白你的问题。cmn是一个数组,如果你向其中添加了一些内容,它将位于数组中。或者你想将ABU添加到数组的第一个元素中吗?创建一个你希望的示例文档,这将帮助我们给你一个正确的答案:)