module Groupify::Mongoid::Group::ClassMethods::MemberAssociationExtensions
Public Instance Methods
as(membership_type)
click to toggle source
# File lib/groupify/adapter/mongoid/group.rb, line 111 def as(membership_type) return self unless membership_type where(:group_memberships.elem_match => { as: membership_type.to_s, group_ids: [base.id] }) end
delete(*args)
click to toggle source
Calls superclass method
# File lib/groupify/adapter/mongoid/group.rb, line 120 def delete(*args) opts = args.extract_options! members = args if opts[:as] members.each do |member| member.group_memberships.as(opts[:as]).first.groups.delete(base) end else members.each do |member| member.group_memberships.in(groups: base).each do |membership| membership.groups.delete(base) end end super(*members) end end
destroy(*args)
click to toggle source
# File lib/groupify/adapter/mongoid/group.rb, line 116 def destroy(*args) delete(*args) end