django - 如何在 Django 中显示不同时区的所有日期时间对象
问题描述
我对 Django 比较陌生。
我所有的日期时间对象都在 UTC 和我的settings.py文件有TIME_ZONE = 'UTC'
当这些datetime
对象使用 {{ obj.datetime }} 在我的 html 模板中显示时,它们显示在 中UTC
,我想在UTC-05:00中显示它们。
我怎样才能改变这个?
注意:我正在使用基于类的视图
解决方案
您可以在settings.py集中更改全局时区:
TIME_ZONE = 'America/Panama'
对于 UTC-05:00
或者您可以timezone
在模板中使用过滤器 - 请参阅 Django文档
{% load tz %}
{{ obj.datetime|timezone:"America/Atikokan" }}
{% timezone "America/Panama" %}
Panama time: {{ value }}
{% endtimezone %}
如何查看所有可用时区?
pytz提供了助手,包括当前时区列表和所有可用时区列表——其中一些仅具有历史意义。
来自维基百科的时区列表:https ://en.wikipedia.org/wiki/List_of_tz_database_time_zones
推荐阅读
- javascript - 启用复选框时如何隐藏工具提示
- sql - SparkSQL 解析 - SqlBase.g4 无法识别小写关键字和标识符
- asp.net - 如何编写我的 ajax 代码以从剃刀视图移动到另一个视图?
- html - Visual Studio '不能在 div 中包含 td'
- sql-server - SQL Find Groups that do not have Value
- javascript - React:URL更改但组件未呈现
- kotlin - 为什么我在 Kotlin 中使用暴露时会收到错误消息?
- c# - C# 复杂 Json 反序列化
- c# - What's the best way to sort about 2.5 million records in memory in c#?
- macos - 自定义文本视图的自动布局支持