Module: Formed::Associations

Extended by:
ActiveSupport::Concern
Included in:
Base
Defined in:
lib/formed/associations.rb,
lib/formed/associations/builder.rb,
lib/formed/associations/association.rb,
lib/formed/associations/builder/has_one.rb,
lib/formed/associations/builder/has_many.rb,
lib/formed/associations/collection_proxy.rb,
lib/formed/associations/builder/association.rb,
lib/formed/associations/foreign_association.rb,
lib/formed/associations/has_one_association.rb,
lib/formed/associations/has_many_association.rb,
lib/formed/associations/singular_association.rb,
lib/formed/associations/collection_association.rb,
lib/formed/associations/builder/singular_association.rb,
lib/formed/associations/builder/collection_association.rb

Defined Under Namespace

Modules: Builder, ForeignAssociation Classes: Association, CollectionAssociation, CollectionProxy, HasManyAssociation, HasOneAssociation, SingularAssociation

Instance Method Summary collapse

Instance Method Details

#association(name) ⇒ Object

:nodoc:



7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/formed/associations.rb', line 7

def association(name) # :nodoc:
  association = association_instance_get(name)

  if association.nil?
    unless (reflection = self.class._reflect_on_association(name))
      raise AssociationNotFoundError.new(self, name)
    end

    association = reflection.association_class.new(self, reflection)
    association_instance_set(name, association)
  end

  association
end

#association_cached?(name) ⇒ Boolean

:nodoc:

Returns:

  • (Boolean)


22
23
24
# File 'lib/formed/associations.rb', line 22

def association_cached?(name) # :nodoc:
  @association_cache.key?(name)
end

#initialize_dupObject

:nodoc:



26
27
28
29
# File 'lib/formed/associations.rb', line 26

def initialize_dup(*) # :nodoc:
  @association_cache = {}
  super
end