首页 > 解决方案 > 从nodejs中的其他模型sequelize中检索数据

问题描述

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

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

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

标签: node.jssequelize.js

解决方案


我相信你需要首先建立双向关系。听起来公告是属于类的,一个类可以有很多公告,对吗?在这种情况下,您需要这样做:

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


推荐阅读