def create_timezonestamp(value):
if value.tzinfo and hasattr(value.tzinfo, 'zone'):
# We have a pytz timezone, we can work with this
tz = value.tzinfo.zone
elif value.tzinfo:
# Got some timezone data, but it's not a pytz timezone
# Let's just assume someone used dateutil parser on a UTC
# ISO format timestamp
# Fixes https://github.com/learningequality/kolibri/issues/1824
tz = pytz.utc
value = value.astimezone(tz)
else:
tz = timezone.get_current_timezone().zone
value = timezone.make_aware(value, timezone.get_current_timezone())
date_time_string = value.astimezone(pytz.utc).strftime(date_time_format)
tz_string = tz_format.format(tz=tz)
value = db_storage_string.format(date_time_string=date_time_string, tz_string=tz_string)
return value
评论列表
文章目录