Rails 4:在没有角色的用户的用户模型中创建范围

时间:2016-01-29 22:26:52

标签: ruby-on-rails scope rolify

Im usung Rolify gem,我需要让所有用户在我的应用中没有任何角色。如何在User模型中创建一个范围,使所有用户都没有角色?

User.with_no_role

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

User.with_role(nil)

答案 1 :(得分:0)

User模型中,您可以定义范围:

class User < ActiveRecord::Base
  scope :with_no_role, -> { where(role: nil) }
end

[编辑]当您使用Rolify时,您需要执行以下操作:

User.where.not(id: User.with_role(:admin).pluck(users: :id))

请参阅here