MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Искам моята функция pre('save') mongoose да работи само веднъж

Можете да използвате isModified метод в полето „парола“.

Използвам го по този начин, изпълнявам bcrypt само ако свойството на паролата е променено:

UserSchema.pre('save', function (next) {
  var user = this;

  if (user.isModified('password')) {
    bcrypt.genSalt(10, (err, salt) => {
      bcrypt.hash(user.password, salt, (err, hash) => {
        user.password = hash;
        next();
      });
    });
  } else {
    next();
  }
});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Вмъкнете стойност на формуляр (json формат) в база данни с помощта на meteor

  2. Изключение при използване на mongodb като infinispan кеш хранилище

  3. Одитът на Spring Data MongoDB не работи за вградени документи

  4. как да изпълните командата mongo admin от java

  5. Mongodb заявка конкретен месец|година не дата