Переопределить DjangoJSONEncoder и указывать его при сериализации. Ну они там их показывают, если не пустое значение.
Угу спасибо. Я сделал свой DjangoJSONEncoder
class DjangoJSONEncoder_my(json.JSONEncoder):
"""
JSONEncoder subclass that knows how to encode date/time, decimal types and UUIDs.
"""
def default(self, o):
# See "Date Time String Format" in the ECMA-262 specification.
if isinstance(o, datetime.datetime):
r = o.isoformat()
if o.microsecond:
r = r[:23] + r[26:]
if r.endswith('+00:00'):
r = r[:-6]
if r.count('.') == 0:
r += '.0Z'
else:
r += 'Z'
return r
elif isinstance(o, datetime.date):
return o.isoformat()
elif isinstance(o, datetime.time):
if is_aware(o):
raise ValueError("JSON can't represent timezone-aware times.")
r = o.isoformat()
if o.microsecond:
r = r[:12]
return r
elif isinstance(o, decimal.Decimal):
return str(o)
elif isinstance(o, uuid.UUID):
return str(o)
else:
return super(DjangoJSONEncoder_AMIC, self).default(o)
смущает строчка наверху в этом модуле (json.py)
# Avoid shadowing the standard library json module
from __future__ import absolute_import, unicode_literals
Она нужна?
Updated 26 Jan. 2016, 13:34 by Closius.