Ervan uitgaande dat var friend = { firstName: 'Harry', lastName: 'Potter' };
Er zijn twee opties die je hebt:
Werk het model in het geheugen bij en sla het op (plain javascript array.push):
person.friends.push(friend);
person.save(done);
of
PersonModel.update(
{ _id: person._id },
{ $push: { friends: friend } },
done
);
Ik probeer altijd voor de eerste optie te gaan als dat mogelijk is, omdat het meer van de voordelen respecteert die mangoest je geeft (haken, validatie, enz.).
Als u echter veel gelijktijdige schrijfbewerkingen uitvoert, zult u in race-omstandigheden terechtkomen waarin u vervelende versiefouten krijgt, zodat u niet elke keer het hele model hoeft te vervangen en de vorige vriend die u hebt toegevoegd, kwijtraakt. Ga dus alleen naar de eerste als het absoluut noodzakelijk is.