いくつかのツイートを mongodb に UTC 形式で保存し、ツイートで指定された utc 時間をローカル マシンのローカル タイム ゾーンに変換していますが、ローカル マシンでは正しくレンダリングされますが、サーバーではレンダリングされません。
保管
#d is the tweet
created_at = d['created_at']
dt = datetime.datetime.strptime(created_at,\
"%a %b %d %H:%M:%S +0000 %Y")
dt = dt.replace(second = 0, minute=0)
db.collection({'created_at': dt})
変換
here = tz.tzlocal('Asia/Colombo')
utc = tz.gettz('UTC')
for index, item in enumerate(items):
ist = item['created_at'].replace(tzinfo=utc).astimezone(here)
ist_readable = ist.replace(minute =0, second = 0).ctime()
items[index]['created_at'] = ist_readable
return items
出力
Thu Apr 19 04:00:00 2012
Thu Apr 19 03:00:00 2012
ローカル マシンでの出力
Thu Apr 19 09:00:00 2012
Thu Apr 19 08:00:00 2012
ローカル マシンのタイム ゾーンは「IST」に設定され、サーバーのタイム ゾーンは「UTC」に設定されています。