猿问

是否可以更新对象中包含的值

我的数据库实际上是这样的:


{

  object1: {

    object2: {

      enabled: false,

      string: "foo"

    },

    object3: {

      enabled: true,

      string: "bar"

    }

  }

}

我想enabled:在object2不改变"foo"值的情况下更新 。


我试过这个:


data.updateOne({ object1: { object2: { enabled: true } } });

但它改变了所有的object2,它删除了object3并删除了的string值object2。我怎样才能更新我的数据库而不完全改变它?


牧羊人nacy
浏览 126回答 1
1回答

qq_笑_17

您应该使用点符号:要在嵌入文档或数组中指定 <field>,请使用点表示法。data.updateOne({&nbsp;query&nbsp;},&nbsp;{&nbsp;$set:&nbsp;{&nbsp;"object1.object2.enabled":&nbsp;true&nbsp;}&nbsp;});
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答