У меня есть модель сиквела, в которой 2 записи столбца должны быть уникальными.Запись электронной почты работает нормально и отправляет сообщение об ошибке, если указан неуникальный адрес электронной почты.Однако поле имени пользователя будет введено, даже если оно уже существует в базе данных.Что еще нужно добавить ко второму уникальному валидатору, чтобы он заработал?
Вот моя модель:
module.exports = function(sequelize, DataTypes) {
var User = sequelize.define("User", {
email: {
type: DataTypes.STRING,
allowNull: false,
unique: true,
validate: {
isEmail: true
}
},
username: {
type: DataTypes.STRING,
allowNull: false,
unique: true
},
password: {
type: DataTypes.STRING,
allowNull: false
},
profileImg: {
type: DataTypes.STRING,
defaultValue: "default.png"
}
});
User.associate = function(models) {
User.hasMany(models.Post, {
onDelete: "cascade"
});
};
User.prototype.validPassword = function(password) {
return bcrypt.compareSync(password, this.password);
};
User.hook("beforeCreate", function(user) {
user.password = bcrypt.hashSync(user.password, bcrypt.genSaltSync(10), null);
});
return User;
};