Авторът на статията не беше много ясен кога увеличението на версията ще бъде приложено вътрешно, защото, както разбрахте, полето за версия не се актуализира, когато използвате командата за актуализиране.
Ако замените командата за актуализиране с Mongoose pull във вашия масив полето за версия ще бъде увеличено:
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)
});
});
Резултати:
{ __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 ] }
Редактиране:
Методът за актуализиране на модела основно само изгражда и изпълнява заявката. Проверката/увеличаването на версията се извършва, когато използвате метода за запазване