我有两个模型说用户和角色
假设我有3个用户“A”,“B”和“C”,我有3个角色“X”,“Y”,“Z”
并且用户的关系是has_many
角色
让我们假设A有角色X,B有X,Y和C有角色X
如何修改我的查询以获得具有X和Y角色的B
这是我的查询,它返回X或Y
的用户User.joins(:roles).where("roles.name IN (?)", ["X", "Y"])
答案 0 :(得分:0)
我认为在执行下面的查询之后工作将继续,我只是看到你的代码&实现。
User.joins("LEFT JOIN roles ON roles.name = name").where(["name = 'X', 'Y'"])
注意:未经过测试