我正在构建一个Django应用程序,该应用程序将对所有时间戳和日期时间字段使用UTC。用户(环境研究站网络的运营商)接受过以UTC(格林威治标准时间)输入时间的训练,并且服务器以及用户的工作台式机/笔记本电脑设置为UTC,且无夏令时调整。使用UTC的Django应用程序遍及全球
在settings.py
中,我可以将TIME_ZONE
设置为None
,但如果我可以帮助它,则不想依赖服务器时间。
你会如何设置Django的配置设置?
我正在构建一个Django应用程序,该应用程序将对所有时间戳和日期时间字段使用UTC。用户(环境研究站网络的运营商)接受过以UTC(格林威治标准时间)输入时间的训练,并且服务器以及用户的工作台式机/笔记本电脑设置为UTC,且无夏令时调整。使用UTC的Django应用程序遍及全球
在settings.py
中,我可以将TIME_ZONE
设置为None
,但如果我可以帮助它,则不想依赖服务器时间。
你会如何设置Django的配置设置?
我可能是错误的(我只是部分更新了一个项目,以正确处理时区),但我相信TIME_ZONE
变量仅用于Postgres后端(通过刷新源确定)。所以,如果你不使用Postgres,那么你使用的并不重要......如果你使用的是Postgres,你可以使用"UTC"
(relevant documentation)。
时区可以在stdlib中的任何地方使用,通过TZ环境变量(Django设置它并调用tzset)。那就是说,UTC到处都应该是安全的。 – Tobu
见https://docs.djangoproject.com/en/dev/ref/settings/#time-zone
这就是所谓的 “UCT ETC/UCT” 在Django docs。
为什么不使用GMT/UTC/UT时区?也被称为“GMT-0”?那有什么问题?它在Django文档中被称为“UCT Etc/UCT”。 –
好的,我刚才说很明显,这将是更可取的,Django是指维基百科列出的命名时区,它没有这个,但你完全正确的settings.py文档(而不是由Django创建的默认设置文件中的样板文件)将我发送到http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE,其中包含这些文件。如果您想将此添加为解决方案,我会高兴地接受它,否则我会删除该问题。谢谢! – chryss