假设最简单的例子:
var Person = sequelize.define('Person', {
name: Sequelize.STRING,
});
Person.hasMany(Person, { as: 'Children', foreignKeyConstraint: true });
如果我们sequelize.sync
这样做,我们会得到一个ChildrenPersons
连接表,它有一个由PersonId
and组成的两列主键ChildrenId
,但没有外键:
CREATE TABLE `ChildrenPersons` (
`PersonId` int(11) NOT NULL DEFAULT '0',
`ChildrenId` int(11) NOT NULL DEFAULT '0',
`createdAt` datetime NOT NULL,
`updatedAt` datetime NOT NULL,
PRIMARY KEY (`PersonId`,`ChildrenId`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
我如何制作PersonId
和ChildrenId
CONSTRAIN
编辑外键,引用Persons.id
?
我尝试手动创建连接表,但没有奏效。