sql >> Database teknologi >  >> NoSQL >> MongoDB

Jeg vil have min pre('save') mongoose-funktion til kun at fungere én gang

Du kan bruge isModified metode på dit 'adgangskode'-felt.

Jeg bruger det på denne måde, kør kun bcrypt hvis adgangskodeegenskaben blev ændret:

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. Hvordan udfører man en samlet mongo-forespørgsel ved hjælp af json i en streng?

  2. Sådan installeres CouchDB på Debian 10

  3. MongoDB $sqrt

  4. MongoDB ReplicaSet - PRIMÆR rolle falder til SEKUNDÆR, når kun PRIMÆR er tilbage