def to_native(self, value):
"""
Converts the field's value into it's simple representation.
"""
if is_simple_callable(value):
value = value()
if is_protected_type(value):
return value
elif is_non_str_iterable(value) and not isinstance(value, (dict, six.string_types)):
return [self.to_native(item) for item in value]
elif isinstance(value, dict):
# Make sure we preserve field ordering, if it exists
ret = collections.OrderedDict()
for key, val in value.items():
ret[key] = self.to_native(val)
return ret
return force_text(value)
评论列表
文章目录