更新MongoDB中数组中嵌套对象数组中嵌套对象数组中的值
{ _id: ObjectId("5757646866e59fac8d1d8589"), updatedAt: ISODate("2016-06-09T02:49:09.792Z"), createdAt: ISODate("2016-06-08T00:18:48.147Z"), books: [ { name: "book1", id: "1", chapters: [ { id: "1", name: "CH1", details: "Chapter 1", tables: [ { table : 1, heading : 'heading 1' // update this }, { table: 2, heading: 'heading 2' } ] } ] } ] }
如何以编程方式更新表格1的标题。
这是一个静态的方法:
db.books.update({_id: ObjectId("5757646866e59fac8d1d8589")}, {$set: {"books.0.chapters.0.tables.0.heading": "new Heading"}})
我想要做的是这样的事情:
db.books.update({_id: ObjectId("5757646866e59fac8d1d8589"), 'books.id': '1', 'books.chapters.id':'1', 'books.chapters.tables.table':'1' }, {$set: {<what>}})