Sha256: 0c156119479b86515bbe0700c263b468b80c45d9bad5543a7393350aea6231de
Contents?: true
Size: 747 Bytes
Versions: 1
Compression:
Stored size: 747 Bytes
Contents
module AuthAssistant module RoleStrategy module RoleAssignment def roles=(*roles) new_role = roles.first.to_s self.role = new_role if CanCan.available_roles.include? new_role end def roles [role] end def role?(_role) roles.include? _role end module ClassMethods def set_scope scope :with_role, lambda { |role| joins(:roles). where("user.roles_id = roles.id AND roles.id == ?", role) } end def set_relationships has_many :roles end end def self.included(base) base.extend(ClassMethods) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
auth-assistant-0.4.0 | lib/auth_assistant/role_strategies/role_assignment.rb |