node.js - 如何使用基于关联的 sequalize(nodeJs) 从 mysql 中查找数据?
问题描述
我正在开发一个节点 js 项目,将 sequalize 作为我的 ORM,用于从 mysql 获取数据。在此,我需要找到给定用户的所有角色。我的数据库中有 3 个表。1. all_users (userId,userName, etc..) 2. all_roles (roleId, roleName, etc. etc.) 3. user_to_role (userId,roleId) - 映射表
在这里,一个用户可以拥有多个角色。在这种情况下,第三个表中将有许多相同用户的条目。我的联想是这样的。
User.belongsToMany(Role, {as: "Roles", through: "user_to_role"});
现在如何找到给定用户的所有角色?提前致谢
解决方案
一个简单的findAll
应该做
User.findAll({
where: {user_id: <user_id> }
include: [Roles]
})
推荐阅读
- sql - SQL 选择日期在定义的日期范围内的项目
- h2 - 如何在 H2 中删除数据库?
- python - Python: make a derived class into a singleton
- android - Paging 3 - 为什么我的重试页脚没有调用我的 PagingSource 的加载方法?
- sapui5 - 如何在ui5/fiori表JSONModel中进行汇总
- java - 请求范围的 bean 在 Cucumber 的 Spring 测试中不起作用
- python-3.x - 如何使用 CDK Python 通过 lambda 访问跨区域 s3 存储桶
- python - 如果已经在名称空间中,请避免重新加载 Pandas 数据帧
- qt - 未生成 JOM 文件
- ios - 旋转文本 MeshResource 使其不会被镜像