Module: ActiveRecord::Associations
- Extended by:
- ActiveSupport::Concern
- Included in:
- Base
- Defined in:
- activerecord/lib/active_record/associations.rb,
activerecord/lib/active_record/associations/preloader.rb,
activerecord/lib/active_record/associations/association.rb,
activerecord/lib/active_record/associations/join_helper.rb,
activerecord/lib/active_record/associations/alias_tracker.rb,
activerecord/lib/active_record/associations/join_dependency.rb,
activerecord/lib/active_record/associations/collection_proxy.rb,
activerecord/lib/active_record/associations/preloader/has_one.rb,
activerecord/lib/active_record/associations/association_scope.rb,
activerecord/lib/active_record/associations/preloader/has_many.rb,
activerecord/lib/active_record/associations/has_one_association.rb,
activerecord/lib/active_record/associations/through_association.rb,
activerecord/lib/active_record/associations/singular_association.rb,
activerecord/lib/active_record/associations/preloader/belongs_to.rb,
activerecord/lib/active_record/associations/has_many_association.rb,
activerecord/lib/active_record/associations/preloader/association.rb,
activerecord/lib/active_record/associations/belongs_to_association.rb,
activerecord/lib/active_record/associations/collection_association.rb,
activerecord/lib/active_record/associations/preloader/has_one_through.rb,
activerecord/lib/active_record/associations/join_dependency/join_base.rb,
activerecord/lib/active_record/associations/join_dependency/join_part.rb,
activerecord/lib/active_record/associations/preloader/has_many_through.rb,
activerecord/lib/active_record/associations/has_one_through_association.rb,
activerecord/lib/active_record/associations/has_many_through_association.rb,
activerecord/lib/active_record/associations/preloader/through_association.rb,
activerecord/lib/active_record/associations/preloader/singular_association.rb,
activerecord/lib/active_record/associations/preloader/collection_association.rb,
activerecord/lib/active_record/associations/join_dependency/join_association.rb,
activerecord/lib/active_record/associations/preloader/has_and_belongs_to_many.rb,
activerecord/lib/active_record/associations/belongs_to_polymorphic_association.rb,
activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb
Overview
Active Record Has And Belongs To Many Association
Defined Under Namespace
Modules: Builder, ClassMethods, JoinHelper, ThroughAssociation Classes: AliasTracker, Association, AssociationScope, BelongsToAssociation, BelongsToPolymorphicAssociation, CollectionAssociation, CollectionProxy, HasAndBelongsToManyAssociation, HasManyAssociation, HasManyThroughAssociation, HasOneAssociation, HasOneThroughAssociation, JoinDependency, Preloader, SingularAssociation
Instance Attribute Summary collapse
-
#association_cache ⇒ Object
readonly
:nodoc:.
Instance Method Summary collapse
-
#association(name) ⇒ Object
Returns the association instance for the given name, instantiating it if it doesn’t already exist.
-
#clear_association_cache ⇒ Object
Clears out the association cache.
Methods included from ActiveSupport::Concern
append_features, extended, included
Instance Attribute Details
#association_cache ⇒ Object (readonly)
:nodoc:
149 150 151 |
# File 'activerecord/lib/active_record/associations.rb', line 149 def association_cache @association_cache end |
Instance Method Details
#association(name) ⇒ Object
Returns the association instance for the given name, instantiating it if it doesn’t already exist
152 153 154 155 156 157 158 159 160 161 162 |
# File 'activerecord/lib/active_record/associations.rb', line 152 def association(name) #:nodoc: association = association_instance_get(name) if association.nil? reflection = self.class.reflect_on_association(name) association = reflection.association_class.new(self, reflection) association_instance_set(name, association) end association end |
#clear_association_cache ⇒ Object
Clears out the association cache.
144 145 146 |
# File 'activerecord/lib/active_record/associations.rb', line 144 def clear_association_cache #:nodoc: @association_cache.clear if persisted? end |