Module: Garnish::Presenter::Relationships

Defined in:
lib/garnish/presenter/relationships.rb

Class Method Summary collapse

Class Method Details

.extended(base) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/garnish/presenter/relationships.rb', line 5

def self.extended(base)
  base.extend Garnish::Converter
  base.class_eval do
    relationships = Garnish::ModelAdapters::AbstractAdapter.adapter_class.defined_relationships(self)

    relationships.map do |key|
      alias_method "#{key}_orig".to_sym, key.to_sym
      define_method "#{key}" do |*rest|
        records = self.send("#{key}_orig")
        Garnish::Collection.new(records, template)
      end
    end
  end
end