method
collect_join_chain
v6.1.3.1 -
Show latest stable
- Class:
ActiveRecord::Reflection::ThroughReflection
collect_join_chain()public
Returns an array of reflections which are involved in this association. Each item in the array corresponds to a table which will be part of the query for this association.
The chain is built by recursively calling #chain on the source reflection and the through reflection. The base case for the recursion is a normal association, which just returns
- self
-
as its #chain.
class Post < ActiveRecord::Base has_many :taggings has_many :tags, through: :taggings end tags_reflection = Post.reflect_on_association(:tags) tags_reflection.chain # => [<ActiveRecord::Reflection::ThroughReflection: @delegate_reflection=#<ActiveRecord::Reflection::HasManyReflection: @name=:tags...>, <ActiveRecord::Reflection::HasManyReflection: @name=:taggings, @options={}, @active_record=Post>]