Este es un error de tipo común que ocurre principalmente debido a
1. Cuando el tipo de datos de la clave principal y el tipo de datos de la clave externa no coincide
return sequelize.define('RefreshToken', {
userId: {
type: DataTypes.INTEGER(11), // The data type defined here and
references: {
model: 'Users',
key: 'idUsers'
}
},
return sequelize.define('Users', {
idUsers: {
type: DataTypes.INTEGER(11), // This data type should be the same
},
2. Cuando la clave referenciada no es una clave primaria o única.
No puede tener dos claves principales, por lo que otras claves a las que se hace referencia deben definirse como únicas. unique:true
return sequelize.define('Users', {
idUsers: {
primaryKey: true
},
mail: {
type: DataTypes.STRING(45),
allowNull: false,
primaryKey: true // You should change this to 'unique:true'. you cant hv two primary keys in one table.
}