Module: Groupify::ActiveRecord::GroupMember::GroupAssociationExtensions
- Defined in:
- lib/groupify/adapter/active_record/group_member.rb
Instance Method Summary collapse
Instance Method Details
#as(membership_type) ⇒ Object
32 33 34 35 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 32 def as(membership_type) return self unless membership_type where(group_memberships: {membership_type: membership_type}) end |
#delete(*args) ⇒ Object
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 37 def delete(*args) opts = args. groups = args.flatten if opts[:as] proxy_association.owner.group_memberships_as_member.where(group_id: groups.map(&:id)).as(opts[:as]).delete_all else super(*groups) end end |
#destroy(*args) ⇒ Object
48 49 50 51 52 53 54 55 56 57 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 48 def destroy(*args) opts = args. groups = args.flatten if opts[:as] proxy_association.owner.group_memberships_as_member.where(group_id: groups.map(&:id)).as(opts[:as]).destroy_all else super(*groups) end end |