从NodeJS中的其他模型序列中检索数据

时间:2020-08-11 08:27:01

标签: node.js sequelize.js

我有两种模式,一种是公告,另一种是课程。我在公告模型中定义它们之间的关系。

announcements.belongsTo(models.classes, { foreignKey: 'classId' });

我如何获取用户已注册课程的所有公告的列表。我在公告中添加了userId

1 个答案:

答案 0 :(得分:1)

我认为您首先需要建立两种关系。听起来好像公告属于班级,一个班级可以有很多公告,对吗?在这种情况下,您需要执行以下操作:

announcements.belongsTo(models.classes, {foreignKey: 'classId'});
classes.hasMany(models.announcements, { as: 'announcements' });

从那里,您可以像这样查询它:

classes.findAll(
      { include: [ {model: models.announcements, as: 'announcements'} ]
)

或者您的查询可能是什么。他们的关联文档中都对此进行了概述:https://sequelize.org/master/manual/assocs.html

相关问题