【发布时间】:2012-09-17 08:56:44
【问题描述】:
我有一个向我发送 unixtimestamp 的 javascript 日历。我在新加坡。我希望将此时间戳解释为新加坡时间戳,然后转换为 utc 以与 db 进行比较。
为了我自己,我无法弄清楚如何告诉 django 这个时间戳来自当前时区,新加坡。
当我打印时间戳时,它会增加 8 小时的时间(这意味着 django 认为我以 UTC 格式输入时间并将其本地化到新加坡语境)
在许多其他事情中,我尝试了:
start=datetime.datetime.fromtimestamp(int(start_date)).replace(tzinfo=get_current_timezone())
start_date 是 1325376000(转换为 2012-01-01 00:00:00)
但是,当我打印此输出时,我得到 2012-01-01 08:00:00+06:55。当新加坡是 +08:00 时,我什至不知道 +06:55 来自哪里。我迷路了。
感谢您的帮助。
settings.py:
TIME_ZONE = 'Asia/Singapore'
USE_TZ = True
【问题讨论】:
-
posix 时间戳
1325376000是'2012-01-01 00:00:00 UTC+0000'和'2012-01-01 08:00:00 SGT+0800'。为什么你认为在新加坡应该是00:00:00?
标签: django datetime timezone pytz