提交 fba18f19 编写于 作者: B Ben Woosley

Extract JoinDependency#join_relation to DRY the repeated application of the #join_associations.

上级 35c198ca
......@@ -55,6 +55,13 @@ def join_base
join_parts.first
end
def join_relation(relation)
join_associations.each do |association|
relation = association.join_relation(relation)
end
relation
end
def columns
join_parts.collect { |join_part|
table = join_part.aliased_table
......
......@@ -225,10 +225,7 @@ def construct_relation_for_association_find(join_dependency)
def apply_join_dependency(relation, join_dependency)
relation = relation.except(:includes, :eager_load, :preload)
join_dependency.join_associations.each do |association|
relation = association.join_relation(relation)
end
relation = join_dependency.join_relation(relation)
if using_limitable_reflections?(join_dependency.reflections)
relation
......
......@@ -94,9 +94,7 @@ def merge_joins
[])
relation.joins! rest
join_dependency.join_associations.each do |association|
@relation = association.join_relation(relation)
end
@relation = join_dependency.join_relation(relation)
end
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册