Vous pouvez faire tout cela avec une seule update
appeler le modèle au lieu de le récupérer d'abord avec findOne
:
User.update(
{'addresses._id': address_id},
{$set: {'addresses.$.street': 'Blah'}},
function(err, count) { ... });
Cela utilise le positionnel $
opérateur
dans le $set
pour cibler uniquement les addresses
élément correspondant à la requête.