aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/base.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2008-08-21 17:50:06 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2008-08-21 17:50:06 -0700
commitaab2f0b353d4d8d80605dda328ca3c28f680e2b1 (patch)
tree100a3192923dea387b59ef1b9364d3d940753b33 /activerecord/lib/active_record/base.rb
parent09343166ac213e5fcbd3eb5b21d44606b56afa62 (diff)
parent98fb161dbb13feb18165468aedf1581d5c2305f4 (diff)
downloadrails-aab2f0b353d4d8d80605dda328ca3c28f680e2b1.tar.gz
rails-aab2f0b353d4d8d80605dda328ca3c28f680e2b1.tar.bz2
rails-aab2f0b353d4d8d80605dda328ca3c28f680e2b1.zip
Merge branch 'master' of git@github.com:rails/rails
Diffstat (limited to 'activerecord/lib/active_record/base.rb')
-rw-r--r--activerecord/lib/active_record/base.rb15
1 files changed, 9 insertions, 6 deletions
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb
index 5357255bad..f4f07aa740 100644
--- a/activerecord/lib/active_record/base.rb
+++ b/activerecord/lib/active_record/base.rb
@@ -1750,7 +1750,7 @@ module ActiveRecord #:nodoc:
def attribute_condition(argument)
case argument
when nil then "IS ?"
- when Array, ActiveRecord::Associations::AssociationCollection then "IN (?)"
+ when Array, ActiveRecord::Associations::AssociationCollection, ActiveRecord::NamedScope::Scope then "IN (?)"
when Range then "BETWEEN ? AND ?"
else "= ?"
end
@@ -2572,11 +2572,14 @@ module ActiveRecord #:nodoc:
end
def convert_number_column_value(value)
- case value
- when FalseClass; 0
- when TrueClass; 1
- when ''; nil
- else value
+ if value == false
+ 0
+ elsif value == true
+ 1
+ elsif value.is_a?(String) && value.blank?
+ nil
+ else
+ value
end
end