我有一张名叫用户的桌子。一个用户可以出现在多个电子邮件组上。
用户表
id, name1, Sudhir Roy2, Rahul Singh 电子邮件组表
id, emailType, userID1, Promotional, 12, Advertisement, 23, Advertisement, 1 需要让所有的用户基于电子邮件类型。(电子邮件类型是动态的,并以“促销”、“广告”等数组形式发送。
如何基于emailGroup找到用户。
我试着使用Op.and和Op.in。两者都不起作用。
这是我的代码样本。
const user = User.findAll({
where: {
"$emailGroup.emailType$": {
[Op.in]: emailGroup // Array from client
},
},
include: {
model: EmailGroup
}
})当电子邮件组数组是单一的,但当我们试图找到多个电子邮件组时,它工作得很好。
发布于 2020-02-25 10:18:54
还可以将where子句添加到include对象中。
由此产生的findAll将变成:
const user = User.findAll({
include: [
{
model: EmailGroup,
where: {
emailType$: {
[Op.in]: emailGroup, // Array from client
},
},
},
],
});如docs:https://sequelize.org/v5/manual/querying.html#relations---associations中所示
https://stackoverflow.com/questions/59362976
复制相似问题