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. "Magic Link" Management Command by webology 3 weeks, 5 days ago
  2. Closest ORM models to a latitude/longitude point by simonw 3 weeks, 5 days ago
  3. Log the time taken to execute each DB query by kennyx46 3 weeks, 5 days ago
  4. django database snippet by ItsRLuo 1 month ago
  5. Serialize a model instance by chriswedgwood 2 months ago

Comments

Please login first before commenting.