Module: Hypostasis::Document::HasMany::ClassMethods

Defined in:
lib/hypostasis/document/has_many.rb

Instance Method Summary collapse

Instance Method Details

#has_many(klass) ⇒ Object



6
7
8
9
10
11
12
13
14
# File 'lib/hypostasis/document/has_many.rb', line 6

def has_many(klass)
  singular_klass = klass.to_s.singularize
  accessor_name = klass.to_s
  child_klass = singular_klass.to_s.classify
  self_klass = "#{self.to_s.underscore}_id".to_sym
  self.class_eval do
    define_method(accessor_name) { child_klass.constantize.find_where(self_klass => @id) }
  end
end