这是我用于检查电子邮件 ID 是否存在的模型验证
email:{
type:Sequelize.STRING,
validate:{
notEmpty:{
args:true,
msg:"Email-id required"
},
isEmail:{
args:true,
msg:'Valid email-id required'
}
},
unique: {
args:true,
msg: 'Email address already in use!'
}
}
除了unique
email validation
最佳答案
我遇到了同样的问题,为了解决这个问题,我首先将索引添加到模型的表中:
queryInterface.addIndex('users', ['email'], {
indexName: 'email',
indicesType: 'UNIQUE'
})
并将其名称设置为该字段,因为如果您不这样做,它将默认创建一个并且模型将无法使用它。
email: {
type: Sequelize.STRING(191),
allowNull: false,
unique: {
msg: 'your-message-here'
}
},
我不知道这是 sequelize 的错误还是我使用的版本有问题,但只有在我将索引名称设置为与字段相同后它才起作用。
关于mysql - sequelize.js orm :Unique email validation for mysql not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44559079/