Module: Hypostasis::ColumnGroup::BelongsTo::ClassMethods

Defined in:
lib/hypostasis/column_group/belongs_to.rb

Instance Method Summary collapse

Instance Method Details

#belongs_to(klass) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/hypostasis/column_group/belongs_to.rb', line 6

def belongs_to(klass)
  field_name = "#{klass.to_s}_id"
  accessor_name = klass.to_s
  parent_klass = klass.to_s.classify
  self.class_eval do
    field field_name.to_sym
    index field_name.to_sym
    define_method(accessor_name) { parent_klass.constantize.find(self.send(field_name.to_sym)) }
  end
end