From 3de61d200ccfe51a8e7e2fd900838c9c1c91b0f2 Mon Sep 17 00:00:00 2001 From: Jacob Magnusson Date: Fri, 2 Nov 2012 20:55:58 +0100 Subject: Don't convert dictionary into a string representation --- rest_framework/fields.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'rest_framework') diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 375d7a46..6dfe7458 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -90,6 +90,8 @@ class Field(object): return value elif hasattr(value, '__iter__') and not isinstance(value, (dict, basestring)): return [self.to_native(item) for item in value] + elif isinstance(value, dict): + return dict((k, self.to_native(v)) for k, v in value.items()) return smart_unicode(value) def attributes(self): -- cgit v1.2.3 From a6806f03078fbdda598e10260f9d9bcdf07c1dce Mon Sep 17 00:00:00 2001 From: Jacob Magnusson Date: Fri, 2 Nov 2012 21:48:16 +0100 Subject: Apply to_native on dictionary keys as well --- rest_framework/fields.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'rest_framework') diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 6dfe7458..515ccbcf 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -91,7 +91,7 @@ class Field(object): elif hasattr(value, '__iter__') and not isinstance(value, (dict, basestring)): return [self.to_native(item) for item in value] elif isinstance(value, dict): - return dict((k, self.to_native(v)) for k, v in value.items()) + return dict(map(self.to_native, (k, v)) for k, v in value.items()) return smart_unicode(value) def attributes(self): -- cgit v1.2.3