Node.js Sequelize复杂连接语句

Node.js Sequelize复杂连接语句,node.js,sequelize.js,Node.js,Sequelize.js,我最近从C#堆栈切换到了全堆栈javascript,并决定在我的项目中使用Sequelize。我想编写一个查询,从中获取用户、相关角色和租户对象。我用官方文件作为指导,但不知怎么的,我遗漏了一些东西 我用作参考的文档: 数据库模型: 检索用户的代码: let user = await User.findOne({ where: { email }, [ include: {

我最近从C#堆栈切换到了全堆栈javascript,并决定在我的项目中使用Sequelize。我想编写一个查询,从中获取用户、相关角色和租户对象。我用官方文件作为指导,但不知怎么的,我遗漏了一些东西

我用作参考的文档:

数据库模型:

检索用户的代码:

let user = await User.findOne({
            where: { email },
            [
                include: {
                    model: Tenant,
                    where: { id: Sequelize.col('user.tenantId') }
                },
                include: {
                    model: Role,
                    where: { id: Sequelize.col('user.roleId') }
                },

            ]
        });

非常感谢您的帮助,干杯

如果您已经在Sequalize中定义了关联,那么在include中不需要条件,并且您如何包含模型可能存在语法问题,请查看以下查询:

User.findOne({
    where: { email },
    include: [
        {
            model: Tenant,
            // where: { id: Sequelize.col('user.tenantId') }  // <--- REMOVE
        },
        {
            model: Role,
            // where: { id: Sequelize.col('user.roleId') }  // <--- REMOVE
        }
    ]
});
User.findOne({
其中:{email},
包括:[
{
型号:租户,
//其中:{id:Sequelize.col('user.tenantId')}//