已加入表

时间:2017-01-24 09:51:08

标签: ruby-on-rails join scope

我正在尝试为拥有业务的用户构建一个范围。

用户获得了一个带有布尔标志的角色,称为“所有者”。

所以我添加了这样的东西,并尝试了几种可能性,但要么我得到一个错误,要么选择是空白的。

class User
  belongs_to :role

  scope :owner, -> { where(:role.owner) }
end

我找不到解决方案......

我还尝试构建如下选项:

User.joins(:role).where(role: [owner: true])

User.joins(:role).where("roles.owner = true")

1 个答案:

答案 0 :(得分:2)

知道了:)

scope :owners, -> {  joins(:role).where("owner = ?", true) }