Rails在多个关联搜索中加入查询



我有两个模型User和Roles

假设我有3个用户"A","B"one_answers"C"我有3个角色"X","Y","Z"用户的关系为has_many roles

假设A有角色X, B有角色X和Y, C有角色X

我应该如何修改我的查询,以获得B单独的X和Y角色

这是我的查询,返回用户X或Y

User.joins(:roles).where("roles.name IN (?)", ["X", "Y"])

我认为工作将在执行以下查询后,我只是看到你的代码& &;实施。

User.joins("LEFT JOIN roles ON roles.name = name").where(["name = 'X', 'Y'"])

备注:未测试

最新更新