build_joins(join_sources, aliases = nil) private

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/relation/query_methods.rb, line 1709 def build_joins(join_sources, aliases = nil) return join_sources if joins_values.empty? && left_outer_joins_values.empty? buckets, join_type = build_join_buckets named_joins = buckets[:named_join] stashed_joins = buckets[:stashed_join] leading_joins = buckets[:leading_join] join_nodes = buckets[:join_node] join_sources.concat(leading_joins) unless leading_joins.empty? unless named_joins.empty? && stashed_joins.empty? alias_tracker = alias_tracker(leading_joins + join_nodes, aliases) join_dependency = construct_join_dependency(named_joins, join_type) join_sources.concat(join_dependency.join_constraints(stashed_joins, alias_tracker, references_values)) end join_sources.concat(join_nodes) unless join_nodes.empty? join_sources end
Register or log in to add new notes.