Module: Groupify::ActiveRecord::Group

Extended by:
ActiveSupport::Concern
Defined in:
lib/groupify/adapter/active_record.rb

Overview

Usage:

 class Group < ActiveRecord::Base
     acts_as_group, :members => [:users]
     ...
 end

group.add(member)

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#add(member) ⇒ Object



73
74
75
# File 'lib/groupify/adapter/active_record.rb', line 73

def add(member)
  member.groups << self
end

#member_classesObject



69
70
71
# File 'lib/groupify/adapter/active_record.rb', line 69

def member_classes
  self.class.member_classes
end

#membersObject



65
66
67
# File 'lib/groupify/adapter/active_record.rb', line 65

def members
  self.class.default_member_class.joins(:group_memberships).where(:group_memberships => {:member_type => self.class.default_member_class.to_s}).uniq
end

#merge!(source) ⇒ Object

Merge a source group into this group.



78
79
80
# File 'lib/groupify/adapter/active_record.rb', line 78

def merge!(source)
  self.class.merge!(source, self)
end