2013-02-19 106 views
1

我有一个应用程序在settings.py中使用'Asia/Taipei'作为其时区,并在models.py上使用auto_now = true作为datetimefield之一:Django:存储在MySQL数据库中的时区不正确

--- settings.py --- 
TIME_ZONE = 'Asia/Taipei' 
--- models.py --- 
models.DateTimeField(auto_now=True) 

在我的系统,台北也被用来作为我的时区: enter image description here

在MySQL工作台,我已经查询全局和会话TZ和他们的回报是“SYSTEM”: enter image description here

我的问题是当一个条目被添加到数据库时,系统和settings.py上指定的时区未被使用。见样品快照: enter image description here

我缺乏什么?做错了?提前致谢!

+1

谁?谢谢! – jaysonpryde 2013-02-19 10:22:56

回答

3

它现在正在工作。我只是设置了USE_TZ =假

4

通常情况下,数据库将默认存储UTC时间,相应的应用程序将根据设置/配置进行转换。

就你而言,这取决于你的USE_TZ设置。

当USE_TZ为False时,这是Django将存储 所有日期时间的时区。当USE_TZ为True时,这是Django将用于在模板中显示日期时间的默认时区,并解释输入表单中的日期时间。

有关详细信息,您可以参考

相关问题