U moet de $ positionele operator
. gebruikenBijvoorbeeld:
update({
_id: 7,
"comments._id": ObjectId("4da4e7d1590295d4eb81c0c7")
},{
$set: {"comments.$.type": abc}
}, false, true
);
Ik heb het niet getest, maar ik hoop dat het nuttig voor je zal zijn.
Als u de structuur van het document wilt wijzigen, moet u
. gebruikendb.collection.update( criteria,objNew, upsert, multi )
Argumenten:
criteria - query which selects the record to update;
objNew - updated object or $ operators (e.g., $inc) which manipulate the object
upsert - if this should be an "upsert"; that is, if the record does not exist, nsert it
multi - if all documents matching criteria should be updated
en voeg nieuwe objNew in met nieuwe structuur. controleer dit voor meer details