更新对象数组中的对象 属性
Updating an object property that is inside an array of objects
我正在尝试更新对象数组中某个对象的特定 属性。
合集:
我想更新数组中第一个对象内的票 属性。
这就是我想出的:
Flight.findOneAndUpdate({_id: "625764663bddec3da194ebc8"}, {$set: {"ecoSeats.$[0].ticket": "Hello"}});
但是好像什么都没更新。
@永顺的回答是正确的。我认为您的查询有问题,请确保在 _id
中使用 string
或 ObjectId
_id: "625764663bddec3da194ebc8"
!= _id: ObjectId("625764663bddec3da194ebc8")
db.collection.update({
_id: ObjectId("625764663bddec3da194ebc8")
},
{
$set: {
"ecoSeats.0.ticket": "Hello"
}
},
{
multi: true
})
我正在尝试更新对象数组中某个对象的特定 属性。
合集:
我想更新数组中第一个对象内的票 属性。 这就是我想出的:
Flight.findOneAndUpdate({_id: "625764663bddec3da194ebc8"}, {$set: {"ecoSeats.$[0].ticket": "Hello"}});
但是好像什么都没更新。
@永顺的回答是正确的。我认为您的查询有问题,请确保在 _id
string
或 ObjectId
_id: "625764663bddec3da194ebc8"
!= _id: ObjectId("625764663bddec3da194ebc8")
db.collection.update({
_id: ObjectId("625764663bddec3da194ebc8")
},
{
$set: {
"ecoSeats.0.ticket": "Hello"
}
},
{
multi: true
})