【问题标题】:manage and remove objectId from array - mongoose管理并从数组中删除 objectId - mongoose
【发布时间】:2016-10-04 16:21:33
【问题描述】:

我有这个架构结构

{
"_id": {
    "$oid": "571251dae4b065a8c4d70ce1"
},
"email": "somthing12345@gmail.com",
"events": [
    {
        "$oid": "57125378e4b065a8c4d70d10"
    },
    {
        "$oid": "571253b8e4b065a8c4d70d1b"
    }
],
"valid": true,

}

我的问题是这部分

"events": [
{
    "$oid": "57125378e4b065a8c4d70d10"
},
{
    "$oid": "571253b8e4b065a8c4d70d1b"
}

]

如何移除此结构中的对象?

我可以为每个“事件”对象添加字段吗-

"title" : "一些字符串"。

我应该如何添加这个?

谢谢。

【问题讨论】:

    标签: node.js mongodb mongoose mlab


    【解决方案1】:

    删除:

    events.update({
        _id: "571251dae4b065a8c4d70ce1"
      }, {
        $pull: {
          events: {
            $oid: "57125378e4b065a8c4d70d10"
          }
        }
      }, {
        safe: true
      }, function(err, obj) {
        // code goes here
      });
    

    然后添加字段标题:“一些字符串”,mondoDB 目前不允许对嵌入式文档进行多次更新,因此实现目标的唯一方法是从 db 中选择文档,然后获取此文档事件数组并为数组的每个对象添加标题。保存更改事件数组的整个文档。希望你明白一切:)

    【讨论】:

    • 感谢您的重播和时间。如果出现任何问题,我会尝试并在此处更新。
    猜你喜欢
    • 2021-04-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-13
    • 2016-05-09
    • 2018-08-05
    • 2013-11-16
    • 2015-05-02
    • 2021-03-03
    相关资源
    最近更新 更多