Changeset 9394
- Timestamp:
- 11/11/08 18:35:24 (2 months ago)
- Files:
-
- django/trunk/django/db/backends/util.py (modified) (1 diff)
- django/trunk/tests/regressiontests/model_fields/models.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/db/backends/util.py
r8193 r9394 125 125 decimal places. 126 126 """ 127 return u"%.*f" % (decimal_places, value) 127 if isinstance(value, decimal.Decimal): 128 context = decimal.getcontext().copy() 129 context.prec = max_digits 130 return u'%s' % str(value.quantize(decimal.Decimal(".1") ** decimal_places, context=context)) 131 else: 132 return u"%.*f" % (decimal_places, value) django/trunk/tests/regressiontests/model_fields/models.py
r8143 r9394 33 33 ) 34 34 c = models.IntegerField(choices=CHOICES, null=True) 35 36 class BigD(models.Model): 37 d = models.DecimalField(max_digits=38, decimal_places=30) 35 38 36 39 __test__ = {'API_TESTS':""" … … 79 82 [] 80 83 81 84 # Regression test for #5079 -- ensure decimals don't go through a corrupting 85 # float conversion during save. 86 >>> bd = BigD(d="12.9") 87 >>> bd.save() 88 >>> bd = BigD.objects.get(pk=bd.pk) 89 >>> bd.d == decimal.Decimal("12.9") 90 True 82 91 """}
