MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

arrayFilters dans mongodb

Vous devez utiliser new: true pour obtenir la valeur mise à jour et convertir l'id en mongoose objectId pour le faire fonctionner

Post.findOneAndUpdate(
   { 'posts.replies._id': _id }, 
   { $set: { 'posts.$[post].replies.$[reply].text': "something1" } },
   { arrayFilters: [{ 'post._id': postId }, { 'reply._id': _id }], new: true }
)