Crie um
$set
objeto programaticamente baseado nos campos de partialUpdate
para atualizar apenas esses campos usando a notação de ponto:var set = {};
for (var field in partialUpdate) {
set['subDocs.$.' + field] = partialUpdate[field];
}
Parent.update({_id: parentDoc._id, "subDocs._id": document._id},
{$set: set},
function(err, numAffected) {});