Tác giả của bài viết không rõ ràng khi nào thì phần tăng phiên bản sẽ được áp dụng nội bộ, vì khi bạn phát hiện ra trường phiên bản không được cập nhật khi bạn đang sử dụng lệnh cập nhật.
Nếu bạn thay thế lệnh cập nhật bằng Mongoose pull trên mảng của bạn, trường phiên bản sẽ được tăng dần:
var t = Test();
t.name = 'hi'
t.arr = [1, 2, 3, 4, 5, 6];
t.save(function (err, result) {
console.log(result);
// use Mongoose pull method on the array
t.arr.pull(3);
t.save(function(err2, result2) {
console.log(result2)
});
});
Kết quả:
{ __v: 0,
name: 'hi',
_id: 53f59d2a6522edb12114b98c,
arr: [ 1, 2, 3, 4, 5, 6 ] }
{ __v: 1,
name: 'hi',
_id: 53f59d2a6522edb12114b98c,
arr: [ 1, 2, 4, 5, 6 ] }
Chỉnh sửa:
Phương thức cập nhật trên mô hình về cơ bản chỉ xây dựng và thực thi truy vấn. Việc kiểm tra / tăng dần phiên bản được thực hiện khi bạn sử dụng phương pháp lưu