内容简介:1.Django的时区问题django默认的时区是UTC,平时是没有什么影响的,但是在需要将时间戳转换成本时区的时间或者是获取当前的本地的localtime的时候就出现了问题。之前程序在测试时是运行在<div">
1.Django的时区问题
django默认的时区是UTC,平时是没有什么影响的,但是在需要将时间戳转换成本时区的时间或者是获取当前的本地的localtime的时候就出现了问题。之前程序在测试时是运行在 Windows环境 ,所以即使settings.py中的TIME_ZONE使用默认时区, Django也会根据本机的时区使用当前时区时间 。然而程序放到 linux运行程序 时, Django的时区会使用settings.py中的TIME_ZONE设置的时区 ,所以这时就出现了问题。再有当我用脚本在 linux 上测试或者直接进入 Python 环境的时候,运行time.localtime(),显示本机所在时区的当前时间。
<div">
'''
我的django程序中的一部分,这部分功能是将用户的聊天时间戳转化为格式化时间。由于我使用的默认时区UTC,原以为在linux环境中会像windows环境中一样会使用机器设置的时区的时间,
结果并不是,而是使用了默认时区的时间。
'''
import time
send_time = 1543524392
day = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(send_time))
print day # 2018-11-29 20:46:32--->UTC 代码中打印出来的时间是UTC时间
2.Django时区设置
-
在Django的
settings中,有两个配置参数是跟时间与时区有关---->TIME_ZONE和USE_TZ -
USE_TZ为True,Django 使用系统默认时区 ,即America/Chicago,此时TIME_ZONE不管有没有设置都不起作用 。 -
USE_TZ为False,TIME_ZONE为None, Django会使用默认的America/Chicago时间 。 -
设置为其它时区,则要具体的程序运行环境。如果是 Windows系统 ,则USE_TZ为False,TIME_ZONETIME_ZONE设置是没用的,Django会使用本机的所使用的时区 。如果为其他系统,则使用 TIME_ZONE 设置的时区------>即USE_TZ = False,TIME_ZONE = 'Asia/Shanghai', 使用上海的UTC时间 。
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-01/156466.htm
以上所述就是小编给大家介绍的《Django的时区设置问题》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- perl 国际时区设置
- docker时区设置
- Golang, MySQL连接不设置时区的问题
- iphone – 将NSDate设置为特定的日期,时间和时区
- Parallels Desktop虚拟机里的时区/时钟与Mac OS时区不同步
- Linux下修改时区
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Responsive Web Design
Ethan Marcotte / Happy Cog / 2011-6 / USD 18.00
From mobile browsers to netbooks and tablets, users are visiting your sites from an increasing array of devices and browsers. Are your designs ready? Learn how to think beyond the desktop and craft be......一起来看看 《Responsive Web Design》 这本书的介绍吧!