Login

JSON encode ISO UTC datetime

Author:
japerk
Posted:
April 13, 2009
Language:
Python
Version:
1.0
Tags:
datetime json utc
Score:
0 (after 0 ratings)

If you want to do your own JSON serialization of datetime objects instead of using DjangoJSONEncoder, use simplejson.dumps(o, default=encode_datetime). The encode_datetime method will convert the datetime object to UTC and output an ISO format string just like the isoutc template filter.

1
2
3
4
5
6
7
import datetime
from dateutil import tz

def encode_datetime(obj):
	if isinstance(obj, datetime.datetime):
		return obj.astimezone(tz.tzutc()).strftime('%Y-%m-%dT%H:%M:%SZ')
	raise TypeError(repr(o) + " is not JSON serializable")

More like this

  1. isoutc template filter by japerk 5 years, 11 months ago
  2. JSON decode datetime by japerk 5 years, 10 months ago
  3. timeto template filter by japerk 5 years, 11 months ago
  4. Encoding datetime for JSON consumers like YUI by acdha 5 years, 2 months ago
  5. Template tags for localizing UTC times with pytz by wolever 3 years, 6 months ago

Comments

Please login first before commenting.