From 1e53eb0aa2998385e26aa0a4d8542013bc7b575b Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 11 Sep 2014 21:57:32 +0100 Subject: [PATCH] DecimalFields should still be quantized even without coerce_to_string --- rest_framework/fields.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 20b8ffbff..a56ea96b0 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -486,9 +486,6 @@ class DecimalField(Field): return value def to_primative(self, value): - if not self.coerce_to_string: - return value - if isinstance(value, decimal.Decimal): context = decimal.getcontext().copy() context.prec = self.max_digits @@ -496,7 +493,12 @@ class DecimalField(Field): decimal.Decimal('.1') ** self.decimal_places, context=context ) + if not self.coerce_to_string: + return quantized return '{0:f}'.format(quantized) + + if not self.coerce_to_string: + return value return '%.*f' % (self.max_decimal_places, value)