使用OR条件设置Sequelize.js关联

时间:2019-02-06 12:43:02

标签: model sequelize.js associations

我有两个类似的Sequelize模型:

User = sequelize.define('User', { id: ... });
Connection = sequelize.define('Connection', {
    mentor_id: ...,
    mentee_id: ...
});

mentor_idmentee_id是对用户的引用。

我想建立一个关联,以根据用户是指导者还是受指导者来获取与该用户关联的所有连接。

我知道如何设置基本关联,但是不确定如何添加此OR条件。有可能吗?

1 个答案:

答案 0 :(得分:1)

设置基本关联。然后同样查询

User.findAll({
    include: [{
       model: Connection,
       where: { 
            [Op.or] : [{mentor_id: Sequelize.col('user.id')}, {mentee_id: Sequelize.col('user.id')} ] 
       }
    }]
})

希望有帮助,