/ / Django: Форматиране на полета DateTimeField в JSON Serializer - python, json, django

Джанго: Форматиране на полетата DateTimeField в JSON Serializer - python, json, django

Имам един модел, който има няколко DateTimeFields и TimeFields, и аз ги serialize на JSON използвайки:

json.dumps({"items": list(items.values("id","date_time","time"))},cls=DjangoJSONEncoder)

Но списъкът с елементи показва полето date_time като date_time ":" 2013-12-25T17: 00: 00 ".

Как да наложа своето собствено форматиране за date_time или Any DateTimeField / TimeField / DateField, което получава JSON сериализирано?

Благодаря

Отговори:

2 за отговор № 1

Можете да обработвате предварително полетата items които се нуждаят от вашето собствено форматиране диалоговия прозорец за грешките, Може да е нещо като:

now = datetime.now()
desired_format = "%Y-%m-%dT%H-%M"
item["date_time"]= now.strftime(desired_format)

1 за отговор № 2

Можете да напишете собствен json енкодер, погледнете DjangoJSONEncoder, Вместо isoformat можеш да използваш strftime.