通过中间模型加紧加载

我有3个模型:

ModelA,ModelB和ModelC

  • ModelA属于多个ModelB(n:m)
  • ModelB属于多个ModelA(m:n)
  • ModelB属于ModelC(n:1)
  • ModelC有许多ModelB(1:n)

我需要获得ModelA的所有ModelC(通过ModelB)

我相信是这样的,但我不能得到它的工作,当一个through续集创build协会创造怪异foreignKeys和关于这个话题的续集文件是非常不完整的,我的味觉

 ModelA.findOne({ where: ..., include: [ { model: ModelC, through: ... } ] }); 

编辑:我改变了所有的实体模型A,B,C,因为这是一个关于Sequelize API的问题/问题; 不是关于数据库/模型devise

  • 使用Sequelize更新关联模型中的属性
  • sequelizejs upsert throw SequelizeDatabaseError:语法错误在或接近“,”
  • exception的通用捕获版本?
  • Sequelize:构build和保存包含数组的对象
  • 在Model.belongsTo中调用一些不是Sequelize.Model的实例
  • 如何导入需要参数的模块
  • 如何扩展Sequelize模型
  • 将关联创build对象关联不起作用
  • 您的User模型与您的Company模型没有直接关系,但您可以使用嵌套包含以下内容获取Company通过Role

     User.findOne({ where: ..., include: [ { model: Role, include: [ { model: Company, ... } ] } ] });