[英]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"
}
}
})
但什么也没发生。 有人可以帮助我吗?
更新你应该使用update
或updateOne
或findOneAndUpdate
功能,但你使用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.