method
build_join_query
rails latest stable - Class:
ActiveRecord::QueryMethods
build_join_query(manager, buckets, join_type, aliases)private
No documentation available.
# File activerecord/lib/active_record/relation/query_methods.rb, line 1144
def build_join_query(manager, buckets, join_type, aliases)
association_joins = buckets[:association_join]
stashed_joins = buckets[:stashed_join]
leading_joins = buckets[:leading_join]
join_nodes = buckets[:join_node]
join_sources = manager.join_sources
join_sources.concat(leading_joins) unless leading_joins.empty?
unless association_joins.empty? && stashed_joins.empty?
alias_tracker = alias_tracker(leading_joins + join_nodes, aliases)
join_dependency = construct_join_dependency(association_joins, join_type)
join_sources.concat(join_dependency.join_constraints(stashed_joins, alias_tracker))
end
join_sources.concat(join_nodes) unless join_nodes.empty?
end