django中时间的设置与显示:如何在网页上正确地显示当地时间

个人总结,如果有问题请指出

USE_TZ = True

TIME_ZONE = 'Asia/Shanghai'

setting中关于时间的设置有这样两个选项:USE_TZ和TIME_ZONE前者指的是后台是否使用UTC时间,后者是指当地时区,默认时区是-3区;

值得注意的是不管USE_TZ如何设置实际上后台存储的时间是不会带有时区信息的;不管USE_TZ的值是什么样子的,TIME_ZONE都是有意义的

要想在网页上显示出正确的当地时间有两种办法:

1,将USE_TZ设置为False,这样不管是后台还是网页统一使用的都是当地时间

2,将USE_TZ设置为True,这样的话后台统一使用的是UTC时间,显示的问题交给Template模板来进行,{{datetime|date:"Y年m月d日  H:i"}}这样的东西模板会自动渲染成当地时间的,

个人觉得第二种更好

https://yiyibooks.cn/xx/Django_1.11.6/ref/templates/builtins.html这个搜索date:找到日期渲染的地方

https://docs.djangoproject.com/en/1.11/topics/i18n/timezones/

https://yiyibooks.cn/xx/Django_1.11.6/topics/i18n/timezones.html上一篇文章的中文文档,虽然好多是机翻

https://www.cnblogs.com/guigujun/p/6149770.html普通的datetime的格式化的参考

猜你喜欢

转载自www.cnblogs.com/mangmangbiluo/p/9988705.html