django mysql 时区_django 中的时区设置
在settings.py中设置了
TIME_ZONE = 'Asia/Shanghai'
USE_TZ = True
现在的北京时间是 22点35分。django shell 中运行 timezone.now() 结果如下
>>> from django.utils import timezone
>>> timezone.get_current_timezone_name()
'Asia/Shanghai'
>>> timezone.now()
datetime.datetime(2018, 6, 11, 14, 35, 22, 946256, tzinfo=)
显示的时间不是我现在的 22:35 而是 14:35。timezone 是 UTC,而不是我设置的 'Asia/Shanghai'
为什么是这个结果?
Django 如果开启了 Time Zone 功能,则所有的存储和内部处理,甚至包括直接 print 显示全都是 UTC 的。只有通过模板进行表单输入/渲染输出的时候,才会执行 UTC 本地时间的转换。
建议后台处理时间的时候,最好完全使用 UTC,不要考虑本地时间的存在。而显示时间的时候,也避免手动转换,尽量使用 Django 模板系统代劳
启用 USE_TZ = True 后,处理时间方面,有两条 “黄金法则”
保证存储到数据库中的是 UTC 时间;
在函数之间传递时间参数时,确保时间已经转换成 UTC 时间;
比如,通常获取当前时间用的是
import datetime
now = datetime.datetime.now()
启用 USE_TZ = True 后,需要写成
import datetime
from django.utils.timezone import utc
utcnow = datetime.datetime.utcnow().replace(tzinfo=utc)
至于模板,除非应用支持用户设置自己所在的时区,通常我们不需要关心模板的时区问题。模板在展示时间的时候,会使用 settings.TIME_ZONE 中的设置自动把 UTC 时间转成 settings.TIME_ZONE 所在时区的时间渲染
参考
django mysql 时区_django 中的时区设置相关推荐
- php datetime 时区,datetime-php中的时区转换
datetime-php中的时区转换 谁能建议一种简单的方法将日期和时间转换为php中的不同时区? 8个解决方案 108 votes 您可以为此使用datetime对象或其函数别名: 示例(摘自PHP ...
- mysql myisam key_buffer_size_MyISAM中key_buffer_size的设置_MySQL
bitsCN.com MyISAM中key_buffer_size的设置 Key_read_requests和Key_reads就是两个计数器,它们的含义如下: Key_read_requests:从 ...
- django使用mysql事务处理_Django中MySQL事务的使用
Django中事物的使用 from django.db import transaction @transaction.atomic 通过transaction的@transaction.atomic ...
- python django mysql安装_Django+Nginx+uWSGI+Mysql搭建Python Web服务器
原标题:Django+Nginx+uWSGI+Mysql搭建Python Web服务器 安装的时候全部选择英文,记得以前选择中文的时候安装时出了问题,服务器组件一个不选,Ubuntu安装做的很贴心,基 ...
- django mysql 初始化_Django初始化基础(1)
1,wed项目程序工作流程 2.Django生命周期 创建Django项目 root@dev:shiyanglou_project #wokon syl (syl) root@dev:shiyanlo ...
- django 后台日期_Django中的日期和时间格式 DateTimeField
创建django的model时,有DateTimeField.DateField和TimeField三种类型可以用来创建日期字段,其值分别对应着datetime().date().time()三中对象 ...
- django mysql 名称_Django 自定义表名和字段名
通过db_table和db_column自定义数据表名和字段名 假如你的数据库里已经有了一张数据表,且该表包含多个字段,你希望通过Django直接访问该数据表的各个字段而不是重新建立新表,你这时可以通 ...
- Django MySQL 多用户_Django 框架之 同时使用多个数据库
知识点 不同app使用不同数据库 同一app使用不同数据库 简介 参考文档 不同app使用不同数据库 数据库路由 若无指定路由,则使用默认路由方案-default,确保数据的检索和保存使用defaul ...
- django mysql视图_Django框架使用mysql视图操作示例
本文实例讲述了django框架使用mysql视图操作.分享给大家供大家参考,具体如下: 一.mysql视图的创建 mysql中,在两个或者以上的基本表上创建视图,例如:在studentorm表和inf ...
最新文章
- python的none是什么-Python中的None与Null(空字符)的区别
- Linux 随机启动 Mysql​
- kubernetes常用对象
- 可为空的对象必须具有一个值_前端:这里有8个常见的JavaScript经典问题,总有一个你不会的...
- 信奥中的数学:斯特林数、卡特兰数
- 大圆距离matlab代码,python – cartopy:大圆距离线的更高分辨率
- STM32F103_EXTI外部中断
- 线程安全使用相关注意事项
- 51NOD-1005 大数加法【大数】
- 安装mysql报curses的解决
- C#编写串口监控软件的详细教程
- r语言中残差与回归值的残差图_独家 | 手把手教你用R语言做回归后的残差分析(附代码)-阿里云开发者社区...
- H5+微信公众号扫二维码页面跳转功能 vue实现
- 史上最直白的RNN详解(结合torch的example)
- 换发型算法_GitHub - DylanMaeng/yry: yry(颜如玉)—— 一个实现人脸融合的算法,可以接近腾讯天天P图疯狂变脸功能的效果...
- PHP云软件短信接口,短信接口DEMO-PHP
- 常用建站参考网站大本营
- Python 库学习笔记—— BeautifulSoup 处理子标签、后代标签、兄弟标签和父标签
- Adversary Attack(对抗攻击)论文阅读笔记
- 神舟十五航天员邓清明:坐冷板凳25年 终实现飞天梦想
热门文章
- 屏幕后处理——Bloom
- The Minimum Cycle Mean in a Digraph 《有向图中的最小平均权值回路》 Karp
- Android:解决Gradle DSL method not found: 'runProguard()' 问题
- linux中awk下 gsub函数用法
- AS3.0中的显示编程(六)-- 几何结构
- 2021年中国工业互联网安全大赛核能行业赛道writeup之入门的黑客
- 分布式账本(Distributed ledger)
- 避免成为垃圾邮件_如何避免犯垃圾
- 非凡推崇_2015年值得推崇的25位编码者
- iptables防火墙策略