Mongoose:更新嵌套文档数组

时间:2016-06-06 13:49:17

标签: javascript node.js mongodb mongoose

我的收藏如下:

   "_id" : ObjectId("5751f7892ae95d601f40411d"),

   "doc" : [
    {
        "org" : ObjectId("5751f7892ae95d601f40411c"),
        "action" : 0,
        "_id" : ObjectId("5751f7892ae95d601f40411e")
    },
    {
        "org" : ObjectId("5751952cace204c507fad255"),
        "action" : 1,
        "_id" : ObjectId("575217ce341cf6512b8dff39")
    }     ]

我想用org更新doc中的操作字段:5751952cace204c507fad255 所以行动将等于2 我知道这已经被多次回答但是它不适合我

这是我尝试的但是Collection没有改变:

     Model.update(
    {
        "_id":ObjectId("5751f7892ae95d601f40411d"),
        "doc.org":ObjectId("5751952cace204c507fad255")
    },
    {
        "$inc": {
                "doc.$.action": 1
        }
    }
)

1 个答案:

答案 0 :(得分:1)

可以尝试使用位置运算符grouped select-all来增加匹配的操作$

像:

doc.$.action