module Roles::Resource
Public Class Methods
included(base)
click to toggle source
# File lib/roles/resource.rb, line 3 def self.included(base) base.extend ClassMethods end
Public Instance Methods
users_with_role(role_name = nil)
click to toggle source
# File lib/roles/resource.rb, line 17 def users_with_role(role_name = nil) if role_name.nil? self.class.user_class.includes(self.class.role_table).where("#{self.class.role_table}.resource_type LIKE '%s'", self.class.to_s).where("#{self.class.role_table}.resource_id = %s", self.id) else self.class.user_class.includes(self.class.role_table).where("#{self.class.role_table}.resource_type LIKE '%s'", self.class.to_s).where("#{self.class.role_table}.resource_id = %s", self.id).where("#{self.class.role_table}.name LIKE '%s'", role_name.to_s) end end