【发布时间】:2020-04-24 22:35:48
【问题描述】:
我正在尝试将两个外键添加到我的事务表中,其中一个可以正常工作,但第二个无法实现。 有没有办法设置外键数组?我想问题是数组,因为它是唯一不同的东西。
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.createTable('transactions', {
id:
{
type: Sequelize.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false,
},
value:
{
type: Sequelize.FLOAT,
allowNull: false,
},
clientId:
{
type: Sequelize.INTEGER,
allowNull: true,
references: { model: 'client', key: 'id'},
onUpdate: 'CASCADE',
onDelete: 'CASCADE'
},
productId:
{
type: Sequelize.ARRAY(Sequelize.INTEGER),
allowNull: false,
references: { model: 'products', key: 'id'},
onUpdate: 'CASCADE',
onDelete: 'CASCADE'
},
createdAt:
{
type: Sequelize.DATE,
allowNull: false,
},
updatedAt:
{
type: Sequelize.DATE,
allowNull: false,
}
});
},
down: (queryInterface, Sequelize) => {
return queryInterface.dropTable('transactions');
}
};
代码分数:
【问题讨论】:
-
我认为您不需要
Array类型的外键,如果您的表关系构造正确,您也可以共享其他模型模式吗?给你一个正确的答案会很有帮助。
标签: javascript node.js postgresql sequelize.js sequelize-cli