diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2017-02-08 08:52:21 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2017-02-12 18:14:24 +0900 |
commit | 082c75f6232e811287d36441711f75bdcabb51d4 (patch) | |
tree | 1fd857803c0acb9dc69bf3838a29500eaf30bd1b /activerecord/lib/active_record | |
parent | 4fed08fa787a316fa51f14baca9eae11913f5050 (diff) | |
download | rails-082c75f6232e811287d36441711f75bdcabb51d4.tar.gz rails-082c75f6232e811287d36441711f75bdcabb51d4.tar.bz2 rails-082c75f6232e811287d36441711f75bdcabb51d4.zip |
Fix `select_all` with legacy `binds`
Fixes #27923.
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/quoting.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb b/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb index 437e7c6510..9203a66a17 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/quoting.rb @@ -144,7 +144,11 @@ module ActiveRecord private def type_casted_binds(binds) - binds.map { |attr| type_cast(attr.value_for_database) } + if binds.first.is_a?(Array) + binds.map { |column, value| type_cast(value, column) } + else + binds.map { |attr| type_cast(attr.value_for_database) } + end end def types_which_need_no_typecasting |