aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/type.rb
diff options
context:
space:
mode:
authorSean Griffin <sean@thoughtbot.com>2014-05-21 15:07:13 -0700
committerSean Griffin <sean@thoughtbot.com>2014-05-21 15:07:29 -0700
commite45e4f44e35d6ce9868542cc2a151b2a6c497e9b (patch)
treeb68cf8fc46a61a79acee62d5ba96feb97c500ad7 /activerecord/lib/active_record/connection_adapters/type.rb
parentb042f21c93959e0247d447f37644815bdc6d5851 (diff)
downloadrails-e45e4f44e35d6ce9868542cc2a151b2a6c497e9b.tar.gz
rails-e45e4f44e35d6ce9868542cc2a151b2a6c497e9b.tar.bz2
rails-e45e4f44e35d6ce9868542cc2a151b2a6c497e9b.zip
Move extract_scale to decimal type
The only type that has a scale is decimal. There's a special case where decimal columns with 0 scale are type cast to integers if the scale is not specified. Appears to only affect schema dumping.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/type.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/type.rb4
1 files changed, 2 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/type.rb b/activerecord/lib/active_record/connection_adapters/type.rb
index 763176cb2b..9103ae85c0 100644
--- a/activerecord/lib/active_record/connection_adapters/type.rb
+++ b/activerecord/lib/active_record/connection_adapters/type.rb
@@ -22,8 +22,8 @@ module ActiveRecord
class << self
def extract_scale(sql_type)
case sql_type
- when /^(numeric|decimal|number)\((\d+)\)/i then 0
- when /^(numeric|decimal|number)\((\d+)(,(\d+))\)/i then $4.to_i
+ when /\((\d+)\)/ then 0
+ when /\((\d+)(,(\d+))\)/ then $3.to_i
end
end
end