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

Mongodb :la projection d'éléments de tableau avec findOneAndUpdate ne fonctionne pas ?

Comme la documentation pour findOneAndUpdate spécifiez, vous devez inclure votre objet de projection en tant que select propriété des options paramètre :

theCollection.findOneAndUpdate(
    {   name : 'cherif',
        'friends.name':'kevin'
    },
    {   $set:{
            'friends.$.age':25
        }
    },
    {   select: { 
            friends: {
               $elemMatch: 
               {   age : 25 } 
            }
        }
    },
    function(err,result){
        if (!err) {
            console.log(result);
        }
    });