From 2e6625fb775783cdbc721391be18a073a5b9a9c8 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Thu, 4 Sep 2014 14:40:10 -0700 Subject: always reorder bind parameters. fixes #15920 --- activerecord/lib/active_record/relation/query_methods.rb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'activerecord/lib/active_record/relation/query_methods.rb') diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index e59cce6934..e6a088d07e 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -879,12 +879,10 @@ module ActiveRecord arel.lock(lock_value) if lock_value # Reorder bind indexes if joins produced bind values - if arel.bind_values.any? - bvs = arel.bind_values + bind_values - arel.ast.grep(Arel::Nodes::BindParam).each_with_index do |bp, i| - column = bvs[i].first - bp.replace connection.substitute_at(column, i) - end + bvs = arel.bind_values + bind_values + arel.ast.grep(Arel::Nodes::BindParam).each_with_index do |bp, i| + column = bvs[i].first + bp.replace connection.substitute_at(column, i) end arel -- cgit v1.2.3 From 16868b53f9533ba48ca33bb694fade390f0ffe7e Mon Sep 17 00:00:00 2001 From: Yves Senn Date: Tue, 9 Sep 2014 19:16:26 +0200 Subject: A `NullRelation` should represent nothing. Closes #15176. [Matthew Draper & Yves Senn] Closes #16860. (pull request to discuss the implementation) --- activerecord/lib/active_record/relation/query_methods.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'activerecord/lib/active_record/relation/query_methods.rb') diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index e6a088d07e..bbddd28ccc 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -687,11 +687,11 @@ module ActiveRecord # end # def none - extending(NullRelation) + where("1=0").extending!(NullRelation) end def none! # :nodoc: - extending!(NullRelation) + where!("1=0").extending!(NullRelation) end # Sets readonly attributes for the returned relation. If value is -- cgit v1.2.3