业务背景有三张表关系如下:老师表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条经验 获得超13个赞
我之前是这么做的://定义从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表,指定一个teacheriddb.teacher.findAll({include:[{model:db.student}],where:{id:"某一个teacherid"}})祝你成功!
添加回答
举报
0/150
提交
取消