Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Added type conversion before saving a record, so string-based values …

…like "10.0" arent left for the database to convert #820 [dave@cherryville.org]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@928 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
commit dabf90624932ef49214383b0e0bd7d3b80fbc39f 1 parent 37a4615
@dhh dhh authored
View
2  activerecord/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Added type conversion before saving a record, so string-based values like "10.0" aren't left for the database to convert #820 [dave@cherryville.org]
+
* Added with additional settings for working with transactional fixtures and pre-loaded test databases #865 [mindel]
* Fixed acts_as_list to trigger remove_from_list on destroy after the fact, not before, so a unique position can be maintained #871 [Alisdair McDiarmid]
View
2  activerecord/lib/active_record/base.rb
@@ -1241,7 +1241,7 @@ def attributes_protected_by_default
def attributes_with_quotes(include_primary_key = true)
columns_hash = self.class.columns_hash
- attrs_quoted = @attributes.inject({}) do |attrs_quoted, pair|
+ attrs_quoted = attributes.inject({}) do |attrs_quoted, pair|
attrs_quoted[pair.first] = quote(pair.last, columns_hash[pair.first]) unless !include_primary_key && pair.first == self.class.primary_key
attrs_quoted
end
View
2  activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
@@ -179,7 +179,7 @@ def type_cast(value)
case type
when :string then value
when :text then value
- when :integer then value.to_i
+ when :integer then value.to_i rescue value ? 1 : 0
when :float then value.to_f
when :datetime then string_to_time(value)
when :timestamp then string_to_time(value)
Please sign in to comment.
Something went wrong with that request. Please try again.