使用 mongoDB 插入子文档

insert in subdocument with mongoDB

本文关键字:文档 插入 mongoDB 使用      更新时间:2023-09-26

我在集合中有以下文档:

"_id" : "2",
"workspace" : [{
        "name" : "1",
        "widgets" : [ ]
    },{
        "name" : "2",
        "widgets" : [ ]
    },{
        "name" : "3",
        "widgets" : [ ]
    },{
        "name" : "4",
        "widgets" : [ ]
    }
]}

如何在"名称"3 的"小部件"中插入{id: "1", blabla: "blabla"}

与之前仅将所有内容插入文档根目录的答案相比,以下是使用位置运算符执行此操作的正确方法:

db.t.update({
 "_id" : "2",
 "workspace.name" : "3"
},{
 $push: {
   'workspace.$.widgets' : {
       id: "2",
       blabla: "blabla"
   }
 }
});