stop doing assingments in an iterator

This commit is contained in:
Aaron Patterson 2013-05-17 15:39:39 -07:00
parent 2eecc0d8dc
commit 18fe96cc16

@ -106,12 +106,16 @@ def join_to(manager)
] ]
end end
scope_chain_items.each do |item| constraint = scope_chain_items.inject(constraint) do |chain, item|
unless item.is_a?(Relation) unless item.is_a?(Relation)
item = ActiveRecord::Relation.new(reflection.klass, table).instance_exec(self, &item) item = ActiveRecord::Relation.new(reflection.klass, table).instance_exec(self, &item)
end end
constraint = constraint.and(item.arel.constraints) unless item.arel.constraints.empty? if item.arel.constraints.empty?
chain
else
chain.and(item.arel.constraints)
end
end end
manager.from(join(table, constraint)) manager.from(join(table, constraint))