2014-10-13 6 views
5
var post = mongoose.Schema({ 
    ... 
    _createdOn: Date 
}); 

Ben sadece belge oluşturulduktan sonra _createdOn alanını ayarlama izin verir ve gelecekteki güncellemeler üzerinde değişen engellemek istediğiniz güncellenmesini izin vermeyecek. Mongoose'da nasıl yapılır? Başka bir yerde değişikliklerifiravunfaresi: belirli alanlar

schema.pre('save', function(next) { 
    if (!this._createdOn) { 
     this._createdOn = new Date(); 
    } 
    next(); 
}); 

... ve izin vermeme:

userSchema.pre('validate', function(next) { 
    if (self.isModified('_createdOn')) { 
     self.invalidate('_createdOn'); 
    } 
}); 
+0

Bkz: http – arun

cevap

9

zaman ipten kurtardı (sadece ilk kaydetmek üzerine) schemaNamingContext en öncesi _createdOn ayarlayarak bu etkiyi elde : //docs.mongodb.org/manual/reference/operator/update/setOnInsert/