From 4727a94c50e8bb371e9c9e7798a5ba0510320657 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafael=20Mendon=C3=A7a=20Fran=C3=A7a?=
 <rafaelmfranca@gmail.com>
Date: Tue, 1 Sep 2015 16:00:30 -0300
Subject: Respect scale of the column in the Decimal type
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[Rafael Mendonça França + Jean Boussier]
---
 activerecord/lib/active_record/type/decimal.rb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

(limited to 'activerecord/lib')

diff --git a/activerecord/lib/active_record/type/decimal.rb b/activerecord/lib/active_record/type/decimal.rb
index f200a92d10..f5b145230d 100644
--- a/activerecord/lib/active_record/type/decimal.rb
+++ b/activerecord/lib/active_record/type/decimal.rb
@@ -14,7 +14,7 @@ module ActiveRecord
       private
 
       def cast_value(value)
-        case value
+        casted_value = case value
         when ::Float
           convert_float_to_big_decimal(value)
         when ::Numeric, ::String
@@ -26,6 +26,8 @@ module ActiveRecord
             cast_value(value.to_s)
           end
         end
+
+        scale ? casted_value.round(scale) : casted_value
       end
 
       def convert_float_to_big_decimal(value)
-- 
cgit v1.2.3