Class: MegaBar::FieldDisplay

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/mega_bar/field_display.rb

Instance Method Summary collapse

Instance Method Details

#make_data_displayObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/models/mega_bar/field_display.rb', line 7

def make_data_display 
  return if ENV['mega_bar_data_loading'] == 'yes'
  data_display_class = ("MegaBar::" + self.format.to_s.classify).constantize
  data_display_obj = data_display_class.new
  model_id = data_display_obj.get_model_id
  fields = Field.by_model(model_id)
  fields_defaults = {}
  fields.each do |field| 
    unless field.default_value.nil?
      fields_defaults[field.field.parameterize.underscore.to_sym] = field.default_value
    end
  end
  fields_defaults[:field_display_id] = self.id
  data_display_class.where(:field_display_id => self.id).first_or_create(fields_defaults)
  f = Field.where(id: self.field_id)
  #logger.info 'make_data_display: made a ' + data_display_class + ' for field_display ' + self.id + ' (action: ' + self.action + ', table: ' + f[0][:tablename] + ', field: ' + f[0][:field] + ') with values: ' + fields_defaults.inspect
end