From 40887135f6c4e7e9feee03b4dac791ec1d54b3c6 Mon Sep 17 00:00:00 2001 From: Sean Griffin Date: Mon, 19 Jan 2015 14:14:24 -0700 Subject: Whether a column exists or not doesn't affect whether we can use binds Looking through the blame, this logic used to be when we actually created the bind tuple. My guess is that `nil` couldn't be handled there at that time. It can, now. --- activerecord/lib/active_record/relation/query_methods.rb | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'activerecord/lib') diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index 1c36d51cd8..0e50534d47 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -959,12 +959,9 @@ module ActiveRecord def create_binds(opts) bindable, non_binds = opts.partition do |column, value| - case value - when String, Integer, ActiveRecord::StatementCache::Substitute - @klass.columns_hash.include? column.to_s - else - false - end + value.is_a?(String) || + value.is_a?(Integer) || + value.is_a?(ActiveRecord::StatementCache::Substitute) end association_binds, non_binds = non_binds.partition do |column, value| -- cgit v1.2.3