0

subdocument如果我想动态添加它,我似乎可以走得更远,这里是代码:

db.users.update({"pup.cmn.id":id}, {"$addToSet":{"pup.cmn":{"abus":email}}}) 

这给出错误:

OperationFailure: can't append to array using string field name: cmn 

然后,如果我添加positional element我得到这个:

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" 
}
]

如您所见,它会将其添加到同一级别,我不希望这样,因为应用程序会出错。

4

1 回答 1

0

似乎Mongodb for the time of writing (2.4.x)没有这个功能,有票: https ://jira.mongodb.org/browse/SERVER-831

于 2013-06-08T22:42:22.443 回答