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
28 29 30 31 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 28 def as(membership_type) return self unless membership_type where(group_memberships: {membership_type: membership_type}) end |
#delete(*args) ⇒ Object
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 33 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
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/groupify/adapter/active_record/group_member.rb', line 44 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 |