为了账号安全,请及时绑定邮箱和手机立即绑定

sequelize多对多查询怎么用?[已解决]

sequelize多对多查询怎么用?[已解决]

明月笑刀无情 2019-05-20 18:31:42
业务背景有三张表关系如下:老师表teacher:id,name学生表student:id,name老师学生关系表relation:id,teacher_id,student_id以上三张表已经在mysql中建立好了外键关系问题在sequelize里面怎么查询某个老师对应的所有学生信息呢?根据官方文档的来,只能查进行两个表的联合查询,这涉及到3个表的,就搞不出来啦......代码db.teacher.hasMany(db.relation,{foreignKey:`teacher_id`});db.relation.hasMany(db.student,{foreignKey:`id`,targetKey:'student_id`})//接下来怎么做???????????~~~
查看完整描述

2 回答

?
开满天机

TA贡献1786条经验 获得超12个赞

我之前是这么做的:
//定义从teacher到student的关联关系
db.teacher.belongsToMany(db.student,{
through:db.relation,
foreignKey:'teacher_id'
})
//定义从student到teacher的关联关系
db.student.belongsToMany(db.teacher,{
through:db.relation,
foreignKey:'student_id'
})
//查询teacher表,指定一个teacherid
db.teacher.findAll({
include:[
{
model:db.student
}
],
where:{
id:"某一个teacherid"
}
})
祝你成功!
                            
查看完整回答
反对 回复 2019-05-20
  • 2 回答
  • 0 关注
  • 2125 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信