仮定すると、var friend = { firstName: 'Harry', lastName: 'Potter' };
2つのオプションがあります:
インメモリ内のモデルを更新し、保存します(plain javascript array.push):
person.friends.push(friend);
person.save(done);
または
PersonModel.update(
{ _id: person._id },
{ $push: { friends: friend } },
done
);
マングースがあなたに与えるより多くの利点(フック、検証など)を尊重するので、私は常に可能な限り最初のオプションを選択しようとします。
ただし、多数の同時書き込みを実行している場合は、競合状態に陥り、厄介なバージョンエラーが発生して、モデル全体を毎回置き換えて、追加した前の友達を失うことがなくなります。したがって、絶対に必要な場合にのみ前者に移動してください。