Giả sử, var friend = { firstName: 'Harry', lastName: 'Potter' };
Có hai tùy chọn bạn có:
Cập nhật mô hình trong bộ nhớ và lưu (javascript array.push thuần túy):
person.friends.push(friend);
person.save(done);
hoặc
PersonModel.update(
{ _id: person._id },
{ $push: { friends: friend } },
done
);
Tôi luôn thử và chọn lựa chọn đầu tiên khi có thể, vì nó sẽ tôn trọng nhiều hơn những lợi ích mà mongoose mang lại cho bạn (hooks, validation, v.v.).
Tuy nhiên, nếu bạn thực hiện nhiều lần ghi đồng thời, bạn sẽ gặp phải các điều kiện đua, nơi bạn sẽ gặp phải các lỗi phiên bản khó chịu khiến bạn không thể thay thế toàn bộ mô hình mỗi lần và mất đi người bạn trước đó mà bạn đã thêm. Vì vậy, chỉ sử dụng cái cũ khi nó thực sự cần thiết.