如果我想添加 dynamicaly ,我似乎可以超过一个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"
}
]
所以你可以看到,它会将它添加到同一级别,我不希望这样,因为应用程序会出错。