MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

O Mongoose fornece acesso ao valor anterior da propriedade em pre('save')?


A resposta aceita funciona muito bem. Uma sintaxe alternativa também pode ser usada, com o setter alinhado com a definição do Schema:
var Person = new mongoose.Schema({
  name: {
    type: String,
    set: function(name) {
      this._previousName = this.name;
      return name;
    }
});

Person.pre('save', function (next) {
  var previousName = this._previousName;
  if(someCondition) {
    ...
  }
  next();
});