module IAmICan::RoleGroup::Definition

Public Instance Methods

aname(*members, by_name:, which_can: [ ], obj: nil)
Alias for: group_roles
group_roles(*members, by_name:, which_can: [ ], obj: nil) click to toggle source
# File lib/i_am_i_can/role_group/definition.rb, line 6
def group_roles *members, by_name:, which_can: [ ], obj: nil
  group = (i = i_am_i_can).role_group_model.where(name: by_name).first_or_create
  instances, names = Role.extract(members.tap(&:flatten!), i)
  assignment = group._members_exec(:assign, instances, name: names)
  ResultOf.members assignment, i, given: [instances, names]
end
Also aliased as: aname
has_and_groups_roles(*members, by_name: have_roles *members)
have_and_group_roles(*members, by_name: have_roles *members) click to toggle source
# File lib/i_am_i_can/role_group/definition.rb, line 19
def have_and_group_roles *members, by_name:
  have_roles *members
  group_roles *members, by_name: by_name
end
Also aliased as: has_and_groups_roles
remove_roles(*members, from: nil) click to toggle source
# File lib/i_am_i_can/role_group/definition.rb, line 15
def remove_roles *members, from: nil
  # TODO
end