Я использую Sequelize 4.38.0
и у меня есть пользовательская проверка для электронной почты в модели User.
Способ создания пользовательской проверки (см. Ниже), мне нужно пропустить проверку, если электронное письмосвойство не изменилось.В противном случае он останавливает всю операцию обновления (так как считает, что адрес электронной почты уже занят).
Как выполнить проверку свойства только при изменении значения?
email: {
type: DataTypes.STRING,
allowNull: false,
validate: {
isEmail: {
msg: 'Wrong email format',
},
notEmpty: {
msg: 'Email has to be present',
},
isUnique: function(value, next) {
User.find({
where: {
email: value,
organizationId: this.organizationId,
},
})
.then(function(result) {
if (result === null) {
return next()
} else {
return next(' Email address already in use')
}
})
.catch(err => {
return next()
})
},
},
},