Author: ramiro
Date: 2011-12-17 14:10:37 -0800 (Sat, 17 Dec 2011)
New Revision: 17228

Modified:
   django/trunk/django/core/serializers/json.py
Log:
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.

Modified: django/trunk/django/core/serializers/json.py
===================================================================
--- django/trunk/django/core/serializers/json.py        2011-12-17 17:38:08 UTC 
(rev 17227)
+++ django/trunk/django/core/serializers/json.py        2011-12-17 22:10:37 UTC 
(rev 17228)
@@ -18,6 +18,7 @@
     internal_use_only = False
 
     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)
 
     def getvalue(self):

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com.
To unsubscribe from this group, send email to 
django-updates+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to