Node.js 如何通过Sequelize中具有一对一关系的另一个表来关联两个表
我有三张桌子A、B和C。 A和B有一对一的关系。B和C有一对多的关系。 我的问题是如何将A和C与B联系起来。例如: A列有一个\u id、消息 B有B_id列、a_id列(外键) C有C_id列、b_id列(外键) 如何在sequelize中通过B在A和C之间创建关联?您可以在引用Node.js 如何通过Sequelize中具有一对一关系的另一个表来关联两个表,node.js,sequelize.js,associations,Node.js,Sequelize.js,Associations,我有三张桌子A、B和C。 A和B有一对一的关系。B和C有一对多的关系。 我的问题是如何将A和C与B联系起来。例如: A列有一个\u id、消息 B有B_id列、a_id列(外键) C有C_id列、b_id列(外键) 如何在sequelize中通过B在A和C之间创建关联?您可以在引用B的关联中使用到关键字,并指定外键,其他键,以及作为关系的名称 //通过ModelB将ModelA与ModelC关联 ModelA.associate=(models)=>{ //A到C ModelA.belongsT
B
的关联中使用到关键字,并指定外键
,其他键
,以及作为关系的名称
//通过ModelB将ModelA与ModelC关联
ModelA.associate=(models)=>{
//A到C
ModelA.belongsToMany(models.ModelC{
如:“AtoC”,
外键:“a_id”,
otherKey:'b_id',
通过“ModelB”,
});
}
//通过ModelB将ModelC与ModelA关联
ModelA.associate=(models)=>{
ModelC.belongsToMany(models.ModelA{
如:‘CtoA’,
外键:“b_id”,
otherKey:'a_id',
通过“ModelB”,
});
}
要查询关系,请为关联指定模型
,为
,以及至
const result=wait ModelA.findById(aID{
包括:{
型号:'ModelC',
如:“AtoC”,
通过“ModelB”,
}
});
因此,如果A和B有1:1的关系,B和C有1:N的关系。这使得A和C有M:N关系@没错,这是一种多对多的关系。