关于Django显示时间你应该知道的一些问题

yipeiwu_com6年前Python基础

UTC与DST

UTC可以视为一个世界统一的时间,以原子时为基础,其他时区的时间都是在这个基础上增加或减少的,比如中国的时区就为UTC+8。

DST(夏时制)则是为了充分利用夏天日照长的特点,充分利用光照节约能源而人为调整时间的一种机制。通过在夏天将时间向前加一小时,使人们早睡早起节约能源。虽然很多西方国家都采用了DST,但是中国不采用DST。

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python实现的生成自我描述脚本分享(很有意思的程序)

自我描述的语句指这样一种语句:它的内容就是对它本身的描述。(废话……)比如下面这句句子: 复制代码 代码如下: 这是一段自我描述的语句,除了标点符号外,它共包含125个字符,其中33个“...

python Web开发你要理解的WSGI & uwsgi详解

python Web开发你要理解的WSGI & uwsgi详解

WSGI协议 首先弄清下面几个概念: WSGI:全称是Web Server Gateway Interface,WSGI不是服务器,python模块,框架,API或者任何软件,只是一种...

Python中random模块用法实例分析

本文实例讲述了Python中random模块用法。分享给大家供大家参考。具体如下: import random x = random.randint(1,4); y = random...

Python当中的array数组对象实例详解

Python当中的array数组对象实例详解

计算机为数组分配一段连续的内存,从而支持对数组随机访问; 由于项的地址在编号上是连续的,数组某一项的地址可以通过将两个值相加得出,即将数组的基本地址和项的偏移地址相加。 数组的基本地址...

python实现的批量分析xml标签中各个类别个数功能示例

本文实例讲述了python实现的批量分析xml标签中各个类别个数功能。分享给大家供大家参考,具体如下: 文章目录 需要个脚本分析下各个目标的数目 顺带练习下多进程,自用,直接上代码:...