我不能使用findAll()函数在同一个查询中放置多个sequelize实例
我希望能够选择2个单独数据库中的信息。为此,我创建了2个sequelize实例,每个数据库一个。然后,我将模型链接到这些实例。
不幸的是,例如,如果我们用模型“ modelA”命名一个基数A,而用模型“ modelB”命名一个基数B。当我想在同一查询中选择基础A的模型A中的信息并与基础B的模型B链接时,Sequelize告诉我表A.modelB不存在。
显然,他不能将模式名称正确地放在每个模型的前面。
//Instantiation of 2 Sequelize with the two different base names in the 'db' object
//Link models to the good instance of Sequelize
//Set up hasOne / hasMany on models
await db.A.modelA.findAll({
include: [{
model: db.B.modelB,
as: 'modelB'
}]
});
//"SequelizeDatabaseError: Table 'A.modelB' doesn't exist"
在原始SQL中:
SELECT * FROM `A`.`tableA` AS `tableA` INNER JOIN `B`.`tableB` AS `tableB` ON `tableA`.`id` = `tableB`.`id_table_A`;
我希望在SQL语句中输入类似A
。modelA
和B
。modelB
的内容。
我也尝试在模型上设置选项“ schema”,但是有了这个,我得到了错误:
//"SequelizeDatabaseError: Table 'A.B.modelB' doesn't exist"