【发布时间】:2020-12-11 11:31:35
【问题描述】:
我有以下收藏:
{
"_id": "5fcde7d433d4303b242a8048",
"model": "CL",
"type": "ARCHCOMP",
"idProject": "5fcde7d133d4303b242a8041",
"qtts": [
{
"component": "5fca0fbac09bc7bca5628256",
"qttEU": 5,
"qttUSA": 10,
"qttAS": 20
},
{
"component": "5fca136ec09bc7bca5628257",
"qttEU": 10,
"qttUSA": 15,
"qttAS": 25
}
]
},
{
Other documents...
}
我需要更新特定文档(也给出了 id)的特定组件(给出了 id)的字段 'qttEU'、'qttUSA' 和 'qttAS',但我无法使其工作。 ..
这是我尝试过的:
Document.updateOne({ _id: "5fcde7d433d4303b242a8048", "qtts.component": "5fca0fbac09bc7bca5628256" },
{ $set: {"qtts.$.qttEU": 11, "qtts.$.qttUSA": 12, "qtts.$.qttAS": 13 }})
我收到文档已成功更新的响应,但是当我检查数据库时,值未更新...
如果我用那个查询数据库:
Document.findOne({ _id: "5fcde7d433d4303b242a8048", "qtts.component": "5fca0fbac09bc7bca5628256" })
它返回给我的好文件。我不明白我做错了什么。
【问题讨论】: