报错解决——DateTimeField *** received a naive datetime (***) while time zone support is active
这是一个跟时区有关的问题,报错中说到datetime字段得到一个naive datetime,而不是支持time zone的active datetime
由于Django的设置中米哦人USE_TZ设置为True,Django会自动根据所设的时区对时间进行转换,所以程序中和数据保存的时间都转UTC时间,只有模版渲染时会把时间转为TIME_ZONE所设置的时区的时间。
使用datetime.datetime.utcnow()输出的是不带时区的utc时间,称为naive time
rom datetime import datetime
datetime.now()
datetime.datetime(2016, 06, 19, 07, 14, 55, 865000)
使用django.utils.timezone.now()输出的是带时区的utc时间,称为active time
from django.utils import timezone
timezone.now()
datetime.datetime(2016, 06, 19, 07, 15, 48, 367000, tzinfo=<UTC>)
如果项目需要根据时区显示时间,那就使用Django的timezone.now()。不需要的话将USE_TZ设置为False即可。
使用带时区的时间,将所有用到datetime.now()的地方改为timezone.now(),并在对应的文件顶部加上from django.utils import timezone,就OK了。
如果项目中已经有了很多datetime.now(),又不想大面积改动的话,可以将import的语句修改一下
# from datetime import datetime # 原来用的注释掉
from django.utils import timezone as datetime # 不想大面积修改就这么做
报错解决——DateTimeField *** received a naive datetime (***) while time zone support is active的更多相关文章
- Django时间时区问题(received a naive datetime while time zone support is active)
在django1.4以后,存在两个概念 naive time 与 active time. 简单点讲,naive time就是不带时区的时间,Active time就是带时区的时间. 举例来说,使用d ...
- django中使用时间帅选报RuntimeWarning: DateTimeField Coupon.valid_begin_date received a naive datetime (2018-08-16 20:51:40.135425) while time zone support is active.
今天在使用当前时间进行筛选数据时出现了RuntimeWarning: DateTimeField Coupon.valid_begin_date received a naive datetime ( ...
- sphinx :undefined reference to `libiconv' 报错解决办法
sphinx :undefined reference to `libiconv' 报错解决办法 2013-11-30 21:45:39 安装sphinx时不停报错...郁闷在make时报错,错误 ...
- redis运用连接池报错解决
redis使用连接池报错解决redis使用十几小时就一直报异常 redis.clients.jedis.exceptions.JedisConnectionException: Could not g ...
- linux下启动dbca或netmgr类的图形界面报错解决
linux下启动dbca或netmgr类的图形界面报错解决 Xlib: connection to ":0.0" refused by server Xlib: No pro ...
- CentOS 6.5 Maven 编译 Apache Tez 0.8.3 踩坑/报错解决记录
最近准备学习使用Tez,因此从官网下载了最新的Tez 0.8.3源码,按照安装教程编译使用.平时使用的集群环境是离线的,本打算这一次也进行离线编译,无奈一编译就开始报缺少jar包的错,即使手动下载ja ...
- spring boot jpa 使用update 报错解决办法
在spring boot jpa 中自定义sql,执行update操作报错解决办法: 在@Query(...)上添加 @Modifying@Transactional注解
- eclipse创建的maven项目,pom.xml文件报错解决方法
[错误一:]maven 编译级别过低 [解决办法:] 使用 maven-compiler-plugin 将 maven 编译级别改为 jdk1.6 以上: <!-- java编译插件 --> ...
- 搭建oracle linux虚拟机报错解决
sysctl -P 报错解决办法问题症状修改 linux 内核文件 #vi /etc/sysctl.conf后执行sysctl -P 报错error: "net.bridge.bridge ...
随机推荐
- 20 go单元测试
单元测试 Go本身提供了一套轻量级的测试框架.符合规则的测试代码会在运行测试时被自动识别并执行.单元测试源文件的命名规则如下: 必须是以_test.go结尾的文件,比如manager_test.go ...
- html5游戏开发-简单tiger机
http://blog.csdn.net/lufy_legend/article/details/7021965
- Fiddler 简介
Fiddler 简介: (1) Fiddler 是一个抓包工具,主要用来对 HTTP 请求进行分析,浏览器按 F12 也可以进行抓包,但是比较轻量,不支持一些复杂的抓包:(2) WireShark 工 ...
- 修改Ubuntu的aptget源为阿里源的方法
1.复制原文件备份sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 2.编辑源列表文件 sudo vim /etc/apt/sources ...
- linux(centos) 添加系统环境变量
系统环境变量,其实就就是一个添加至系统环境中的路径变量. 编译php的扩展时经常会在扩展包源码目录里执行phpize,每次执行的时候都要敲入一大堆目录,诸如:/usr/local/php/bin/ph ...
- android基础---->Broadcast的使用
在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制.而BroadcastReceiver是对发送出来的 Broadcast进行过滤接受并响应的一类组件. 目录导航: 广 ...
- 倍福TwinCAT3上位机与PLC通信测试(ADS通信) 包含C#和C++代码
倍福TwinCAT3上位机与PLC通信测试(ADS通信) 包含C#和C++代码 本次测试需要环境: VS2013,TwinCAT3(本人版本TC31-Full-Setup.3.1.4018.16) 代 ...
- MySql 远程连接的条件
1.首先看服务器防火墙 引用:http://www.cnblogs.com/silent2012/archive/2015/07/28/4682770.html CentOS 7.0默认使用的是fir ...
- imu_tk标定算法原理
imu_tk代码地址 https://bitbucket.org/alberto_pretto/imu_tk II. S ENSOR E RROR M ODEL 对于理想的IMU,加速度计三元组的3个 ...
- [No0000D3]bat当前路径currentPath.bat
@echo off echo 当前盘符:%~d0 echo 当前盘符和路径:%~dp0 echo 当前批处理全路径:%~f0 echo 当前盘符和路径的短文件名格式:%~sdp0 echo 当前CMD ...