Forfatteren af artiklen var ikke særlig klar over, hvornår versionstilvæksten vil blive anvendt internt, for som du fandt ud af, er versionsfeltet ikke opdateret, når du bruger opdateringskommandoen.
Hvis du erstatter opdateringskommandoen med Mongoose træk metode på dit array vil versionsfeltet blive forøget:
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)
});
});
Resultater:
{ __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 ] }
Rediger:
Opdateringsmetoden på modellen bygger og udfører stort set kun forespørgslen. Versionskontrollen/stigningen udføres, når du bruger gem-metoden