Module: Groupify::ActiveRecord::ClassMethods

Defined in:
lib/groupify/adapter/active_record.rb

Instance Method Summary collapse

Instance Method Details

#acts_as_group(opts = {}) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/groupify/adapter/active_record.rb', line 20

def acts_as_group(opts = {})
  include Groupify::ActiveRecord::Group

  if (member_klass = opts.delete :default_members)
    self.default_member_class = member_klass.to_s.classify.constantize
  end
  
  if (member_klasses = opts.delete :members)
    member_klasses.each do |member_klass|
      has_members(member_klass)
    end
  end
end

#acts_as_group_member(opts = {}) ⇒ Object



34
35
36
37
# File 'lib/groupify/adapter/active_record.rb', line 34

def acts_as_group_member(opts = {})
  @group_class_name = opts[:class_name] || 'Group'
  include Groupify::ActiveRecord::GroupMember
end

#acts_as_group_membership(opts = {}) ⇒ Object



43
44
45
# File 'lib/groupify/adapter/active_record.rb', line 43

def acts_as_group_membership(opts = {})
  include Groupify::ActiveRecord::GroupMembership
end

#acts_as_named_group_member(opts = {}) ⇒ Object



39
40
41
# File 'lib/groupify/adapter/active_record.rb', line 39

def acts_as_named_group_member(opts = {})
  include Groupify::ActiveRecord::NamedGroupMember
end