Autorovi článku nebylo příliš jasné, kdy bude přírůstek verze interně použit, protože jak jste zjistili, pole verze se při použití příkazu update neaktualizuje.
Pokud nahradíte příkaz aktualizace příkazem Mongoose pull metoda na vašem poli pole verze bude zvýšeno:
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ýsledky:
{ __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 ] }
Upravit:
Metoda aktualizace na modelu v podstatě pouze sestaví a provede dotaz. Kontrola verze / inkrementace se provádí při použití metody ukládání