django时区相关说明(django datefield)

网友投稿 254 2022-08-29


django时区相关说明(django datefield)

# naive time从字面意思上理解,这是个"幼稚的时间",所以可以理解为它是个本地时间,不带时区信息,不能直接用于存储,如下import datetimedatetime.datetime.now() # 本地时间,不带时区datetime.datetime.utcnow() # utc时间,不带时区"""不带时区的naive time2022-02-09 11:20:22.0742942022-02-09 03:27:57.935250"""# active time从字面意思上理解,这是个"清醒的时间",所以可以理解为带时区的时间,那么这个"active time"就是我们需要的datetime类型,只要给他正确的时区,存进数据库,那么你的网站的时间就永远不会有问题了,服务器日志也不会再有让你内心奔溃的东西出现了。对于每一个"naive time"我们只需要给它一个正确的tzinfo它就可以被正常使用了,那么这个tzinfo从哪里来呢?在安装django的时候它会检测你有没有安装pytz这个库,如果没有它会自动帮你装上。简单点说就是一个python的时区管理包,那么以后只要我们每次涉及到时间操作时都这样写from pytz import timezoneimport datetimemy_zone = timezone("Asia/Shanghai")my_time = datetime.datetime.now().replace(tzinfo=my_zone)# 如在django项目中,推荐使用下面的,底层也是pytz实现的from django.utils import timezone# django项目中有相关时间问题的话推荐使用form django.utils import timezonetimezone.now() # 带时区的# 如何读取datetime并正确显示## 当存进的datetime时间和它的时区与你所在的时间不对应时的解决办法1.datetime.astimezone()2.django.utils.timezone.localtime()以上两种方法都可以将一个时间转换为另一个时区时间,而2中默认转换为django setting里的时区,当然你也可以指定时区转换。import datetimefrom pytz import timezoneutc_zone = timezone("utc")my_zone = timezone("Asia/Shanghai")my_time = datetime.datetime.utcnow().replace(tzinfo=utc_zone)out_time = my_time.astimezone(my_zone)print(out_time.strftime("%Y-%m-%d %H:%M:%S"))# 一些django中timezone的方法timezone.localtime() # 将一个其它时区的"active time"转换为本地时间,当然这个本地时间依然是有时区的,不是"naive"的,你也可以指定一个timezone让localtime将"active time"转换为其它时区的timetimezone.now() # 可以根据setting中USE_TZ返回一个有(无)时区的datetime.timezone.is_aware() # 判断一个datetime是否是"active"timezone.is_naive() # 判断一个datetime是否是"naive"timezone.make_aware() # 将naive time转换为active timetimezone.make_naive() # 将active time 转换为naive time

https://cloud.tencent.com/developer/article/1028182?from=15425

-------------------------------------------

个性签名:代码过万,键盘敲烂!!!

如果觉得这篇文章对你有小小的帮助的话,记得“推荐”哦,博主在此感谢!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:django中model聚合使用(django 动态生成model)
下一篇:django中_meta组件(django是什么框架)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~