我有一个像这样的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
}
},
{},
() => {}
);
但是没有任何更新。为什么?
谢谢
答案 0 :(得分:0)
好吧,由于架构不严格,我需要在更新查询的配置中使用此参数,并且查询看起来像这样:
await Model.findByIdAndUpdate(
req.params.id,
{
$set: {
"nested_document.myObject.fields.0.value": value
}
},
{ strict: false },
() => {}
);