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
41 42 43 44 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 41 def as(membership_type) return self unless membership_type where(group_memberships: {membership_type: membership_type}) end |
#delete(*args) ⇒ Object
46 47 48 49 50 51 52 53 54 55 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 46 def delete(*args) opts = args. groups = args.flatten if opts[:as] proxy_association.owner.group_memberships.where(group_id: groups.map(&:id)).as(opts[:as]).delete_all else super(*groups) end end |
#destroy(*args) ⇒ Object
57 58 59 60 61 62 63 64 65 66 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 57 def destroy(*args) opts = args. groups = args.flatten if opts[:as] proxy_association.owner.group_memberships.where(group_id: groups.map(&:id)).as(opts[:as]).destroy_all else super(*groups) end end |