Django显示时间的一些问题

1. 时区问题

首先是时区的问题,Django 默认使用的是 UTC 世界协调时,又叫世界统一时间。中国的时间与 UTC 的时差是+8小时,也就是中国时间=UTC+8。

若使用 TIME_ZONE = 'UTC',则模板中显示的时间就是读取到的时间。
若使用 TIME_ZONE = 'Asia/Shanghai' ,则模板中显示的时间就是读取到的时间+8。
如图1和图2所示。

图1 TIME_ZONE = 'Asia/Shanghai'
图2 TIME_ZONE = 'UTC'

2. 时间在模板中的显示问题

在数据库中,时间是这样显示的2017-07-09 11:50:30
假设这个时间我们用变量time表示。
第一种:
模板:{{ time }}
settings中的语言编码: LANGUAGE_CODE = 'en-us'
渲染出来的格式: July 9, 2017, 11:50 a.m.

第二种
模板:{{ time }}
settings中的语言编码: LANGUAGE_CODE = 'zh-Hans'
渲染出来的格式: 2017年7月9日 11:50

第三种
模板:{{ time|date:"Y-m-d H:i:s" }}
settings中的语言编码: 以上两种皆可
渲染出来的格式: 2017-07-09 11:50:30



该文章于2017年8月16日于CSDN上首次发表,2017年12月24日搬家至此!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容