更新一个在MongoDB中的数组内嵌套两次的数组

时间:2018-06-04 08:48:34

标签: mongodb mongoose

所以这就是我的文档现在的样子。而我想要做的是将一个元素推送到一个位于comments的数组 - >评论 - >回复 - >回复 - >喜欢

{
    _id: "5afa9d1a20baf95e03921a10",
    comments: [
        {
            commentID: "67917200-67ca-11e8-85f8-49f00c21219a",
            likes: [ ],
            dislikes: [ ],
            replies: [
                {
                    replyID: "6c6e41e0-67ca-11e8-85f8-49f00c21219a",
                    likes: [
                        // this is the array I would like to update
                    ],
                    dislikes: [ ]
                }
            ]
        }
    ]
},

我在更新一个级别的嵌套数组时很成功,但我不明白为什么我不能以同样的方式更新这个数组。

现在我的查询看起来像这样。

db.collection.update(
        { 
          "_id" : _id, 
          "comments.commentID" : cid, 
          "comments.replies.replyID" : rid },
        { 
          $push : { "comments.replies.$.likes" : uid } 
        }
      )

当尝试向Postman发送请求时,它只是冻结,我必须取消请求。

0 个答案:

没有答案