繁体   English   中英

如何更新 mongoose 中的子文档?

[英]How to update a subdocument in mongoose?

在 mongoose 中使用更新时遇到问题。 我有一个看起来像这样的集合:

{
    "client": "XXXXX",
    "counts": [
        {
            "bank": "XXXXX",
            "agency": "XXXXX",
            "count": "XXXXX",
            "value": "XXXXX",
        },

        {
            "bank": "XXXXX",
            "agency": "XXXXX",
            "count": "XXXXX",
            "value": "XXXXX",
        }
    ]
}

我想做的是更新银行和代理机构匹配的客户计数的关键“价值”。

我试过这个:

model.find({
    "client": "XXXXX",
    "counts": {
      "$elemMatch": {
        "bank": "bank name",
        "count": "count number"
      }
    }
})

但什么也没发生。 有人可以帮助我吗?

更新你应该使用updateupdateOnefindOneAndUpdate功能,但你使用find() ,改变它


const filter = { name: 'Jean-Luc Picard' };
const update = { age: 59 };

// `doc` is the document _before_ `update` was applied
let doc = await Character.findOneAndUpdate(filter, update);

如果要更新数组,请检查更新中的 $elemMatch

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM