Module: ActiveEntity::Associations

Extended by:
ActiveSupport::Autoload, ActiveSupport::Concern
Included in:
Base
Defined in:
lib/active_entity/associations.rb,
lib/active_entity/associations/embeds/association.rb,
lib/active_entity/associations/embeds/collection_proxy.rb,
lib/active_entity/associations/embeds/singular_association.rb,
lib/active_entity/associations/embeds/collection_association.rb,
lib/active_entity/associations/embeds/embeds_one_association.rb,
lib/active_entity/associations/embeds/embedded_in_association.rb,
lib/active_entity/associations/embeds/embeds_many_association.rb

Overview

See ActiveEntity::Associations::ClassMethods for documentation.

Defined Under Namespace

Modules: ClassMethods, Embeds

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.eager_load!Object



58
59
60
61
# File 'lib/active_entity/associations.rb', line 58

def self.eager_load!
  super
  Embeds.eager_load!
end

Instance Method Details

#association(name) ⇒ Object

Returns the association instance for the given name, instantiating it if it doesn’t already exist



63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/active_entity/associations.rb', line 63

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)


77
78
79
# File 'lib/active_entity/associations.rb', line 77

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

#initialize_dupObject

:nodoc:



81
82
83
84
# File 'lib/active_entity/associations.rb', line 81

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