Това е често срещана грешка, възникваща главно поради
1. Когато първичният ключ тип данни и външният ключ тип данни не съвпадна
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. Когато посоченият ключ не е първичен или уникален ключ.
Не можете да имате два първични ключа, така че другите референтни ключове трябва да бъдат дефинирани уникални. 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.
}