【问题标题】:Mongoose update value in object nested in array in nested document嵌套在嵌套文档中的数组中的对象中的猫鼬更新值
【发布时间】:2020-03-01 01:15:30
【问题描述】:

我有一个这样的 mongo 文档:

{
  _id: "...",
  nested_document: {
    _id: "...",
    myObject: {
      fields: [
        { value: "VALUE_TO_CHANGE" },
        { value: "KEEP_THIS_ONE" }
      ]
    }
  }
}

我正在尝试用猫鼬更新VALUE_TO_CHANGE(通过它的索引):

await Model.findByIdAndUpdate(
    req.params.id,
    {
      $set: {
        "nested_document.myObject.fields.$[0].value": value
      }
    },
    {},
    () => {}
  );

但没有任何更新。为什么?

谢谢

【问题讨论】:

    标签: mongodb mongoose mongodb-query


    【解决方案1】:

    好的,由于架构不严格,我需要在更新查询的配置中使用此参数,查询如下所示:

    await Model.findByIdAndUpdate(
        req.params.id,
        {
          $set: {
            "nested_document.myObject.fields.0.value": value
          }
        },
        { strict: false },
        () => {}
      );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-13
      • 2013-11-24
      • 1970-01-01
      • 1970-01-01
      • 2022-01-26
      • 2020-08-09
      • 2023-01-31
      相关资源
      最近更新 更多