如何更新 Mongoose(Mongodb)中嵌套对象数组中的值?
How to update a value in a array of nested object in Mongoose(Momgodb)?
{
"_id" : ObjectId("6221f3a818880f14e3c33040"),
"__v" : 0,
"createdAt" : ISODate("2022-03-04T11:10:32.753Z"),
"pm" : {
"checkList" : [
{
"ch_id" : "621eff4e0ed5c751adaa42fb",
"status" : "statu",
"dateMonthYear" : 1646286480139.0,
"val" : "Gopi",
"remarks" : "Good",
"_id" : ObjectId("6221f3a80a703519a4406e6c")
},
{
"ch_id" : "621eff4e0ed5c751adaa42fb",
"status" : "status",
"dateMonthYear" : 1646286480139.0,
"val" : "Gopi",
"remarks" : "Good",
"_id" : ObjectId("6221f3a80a703519a4406e6e")
}
]
},
"updatedAt" : ISODate("2022-03-04T11:56:59.662Z")
}
以上是集合,其中我需要使用“_id”作为查找条件来更新 pm
对象内的清单数组。
例如,我需要更改 _id 的 val
和 remarks
,ObjectId("6221f3a80a703519a4406e6e")
。
如何实现?
请试试这个方法
使用位置操作“$”
let collection = "已删除"
db.getCollection(collection).findOneAndUpdate({"data._id":ObjectId("5f2c0ebd7493c812cf59c52c")},{"$set":{"data.$.isDefault" : false}},{new:true})
You can update a value in an array of nested objects in Mongoose
`db.users.update({"pm.checkList.ch_id" : "621eff4e0ed5c751adaa42fb"},{ $set:{
"pm.checkList.$.val" : "nop",
"pm.checkList.$.remarks" : "bed",
}})`
{
"_id" : ObjectId("6221f3a818880f14e3c33040"),
"__v" : 0,
"createdAt" : ISODate("2022-03-04T11:10:32.753Z"),
"pm" : {
"checkList" : [
{
"ch_id" : "621eff4e0ed5c751adaa42fb",
"status" : "statu",
"dateMonthYear" : 1646286480139.0,
"val" : "Gopi",
"remarks" : "Good",
"_id" : ObjectId("6221f3a80a703519a4406e6c")
},
{
"ch_id" : "621eff4e0ed5c751adaa42fb",
"status" : "status",
"dateMonthYear" : 1646286480139.0,
"val" : "Gopi",
"remarks" : "Good",
"_id" : ObjectId("6221f3a80a703519a4406e6e")
}
]
},
"updatedAt" : ISODate("2022-03-04T11:56:59.662Z")
}
以上是集合,其中我需要使用“_id”作为查找条件来更新 pm
对象内的清单数组。
例如,我需要更改 _id 的 val
和 remarks
,ObjectId("6221f3a80a703519a4406e6e")
。
如何实现?
请试试这个方法
使用位置操作“$”
let collection = "已删除"
db.getCollection(collection).findOneAndUpdate({"data._id":ObjectId("5f2c0ebd7493c812cf59c52c")},{"$set":{"data.$.isDefault" : false}},{new:true})
You can update a value in an array of nested objects in Mongoose
`db.users.update({"pm.checkList.ch_id" : "621eff4e0ed5c751adaa42fb"},{ $set:{
"pm.checkList.$.val" : "nop",
"pm.checkList.$.remarks" : "bed",
}})`