我正在使用seqalize js,我有一个关系“驱动程序[可以有]许多驱动程序” . 这基于多对多关系 .
我正在尝试找到所有基于特定公司的驱动程序 . 我有以下内容:
models.drivers.findAll({
where: {"companies.id":1},
include: [
models.companies
]
}).then(function(result){
return res.json(result);
return;
});
我收到以下错误:
未处理的拒绝SequelizeDatabaseError:列drivers.companies.id不存在
当我输出没有 where
子句的结果时,'s showing the associated companies just fine. I can'看到这个问题会来自哪里?
1 回答
您可以根据model.findAll的文档在
include
中使用where
选项这会生成
JOIN
,条件类似假设
drivers_companies
是一个连接drivers
和companies
之间的M:M关系的表 .