Module: Graft::Model::InstanceMethods

Defined in:
lib/graft/lib/graft/model.rb

Instance Method Summary collapse

Instance Method Details

#initialize(source_data = nil) ⇒ Object



20
21
22
23
# File 'lib/graft/lib/graft/model.rb', line 20

def initialize(source_data = nil)
  self.source_data = source_data
  self.populate_from(self.source_data) unless self.source_data.nil?
end

#populate_from(data_source) ⇒ Object



33
34
35
36
37
38
# File 'lib/graft/lib/graft/model.rb', line 33

def populate_from(data_source)
  self.class.attributes.each do |attribute|
    value = attribute.value_from(self.class.data_from(data_source))
    self.send("#{attribute.name}=".to_sym, value) unless value.nil?
  end
end

#source_dataObject



29
30
31
# File 'lib/graft/lib/graft/model.rb', line 29

def source_data
  @source_data
end

#source_data=(source_data) ⇒ Object



25
26
27
# File 'lib/graft/lib/graft/model.rb', line 25

def source_data=(source_data)
  @source_data = self.class.data_from(source_data)
end