Fixed #16850 -- Made sure we always represent Decimal instances with JS strings when serializing.
We force this when calling simplejson dump() to isolate us from changes of default behavior to encode them with JavaScript numbers instead that could introduce loss of precision when decoding back from JSON to Python. Thanks Raphael Hertzog for the report and Bob Ippolito for his help. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17228 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
e31c43a360
commit
b5d9ad982d
|
@ -18,6 +18,7 @@ class Serializer(PythonSerializer):
|
||||||
internal_use_only = False
|
internal_use_only = False
|
||||||
|
|
||||||
def end_serialization(self):
|
def end_serialization(self):
|
||||||
|
self.options.update({'use_decimal': False}) # Use JS strings to represent Python Decimal instances (ticket #16850)
|
||||||
simplejson.dump(self.objects, self.stream, cls=DjangoJSONEncoder, **self.options)
|
simplejson.dump(self.objects, self.stream, cls=DjangoJSONEncoder, **self.options)
|
||||||
|
|
||||||
def getvalue(self):
|
def getvalue(self):
|
||||||
|
|
Loading…
Reference in New Issue