Django设置超时时间,django时间格式化
Django和时区设置的问题 Life @ Refactoring
Django和时区设置的问题写于2009年8月19日星期三
Django 1.1及其以前的版本,时区处理相当混乱:
依赖于数据库管理系统本身(Django对PostgreSQL做了特殊处理),跨平台能力弱(Python标准库的TZ环境变量依赖于*nix操作系统)Windows下,设置的值。TIME_ZONE被直接忽略,Django将使用系统默认的本地时间设置。时区。推荐值本身缺乏可移植性。至少在web division提供的Linux主机中,无法识别推荐的‘亚洲/上海PRC’时区。当设置为“亚洲/上海”时,通常不提供统一的时区API和相关过滤器,导致不同的应用程序在时区中以自己的方式工作。其中一些将UTC时间存储在数据库中,而另一些将本地时间存储在数据库中的单个时区设置中——在多用户模式下,不支持与时区相关的用户定义的错误报告:
使用windows环境的开发服务器中的时区错误研究当处理多个时区时,datetime处理被中断;
Django MySQLTIME_ZONE设置中的时区乐趣:它是如何工作的?大多数情况下,不需要改变当地时区,Django在设计时可能已经考虑到了。
但是,使用本地时间存储数据库显然是不灵活的。尤其是美国,采用多个时区,时间会根据夏令时/冬令时进行调整。
错误#2626表明Django正试图改进时区处理。不过在Django完成改进之前,新开发的app,在不考虑多用户的情况下,最好将UTC时间存储在数据库中,前台视图或模板会按照设定的显示时区显示,尽量使用pytz。
参考:Google App Engine通过定制Django的过滤器来解决时区问题。
在多用户的情况下,如果应用是国际化的,用户分布广泛,Django的时区处理功能目前无法满足,就需要使用第三方app: django-timezones。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。