如何在django模板中显示日期时间的本地化时间

Lor*_*ABA 4 python django datetime django-templates

要简短一点. next_contact当我在模板中写时,是UTC日期时间

{{ event.next_contact }}
Run Code Online (Sandbox Code Playgroud)

我得到了正确的本地化日期和时间但是在这个地方我只想要输出时间,所以我这样做:

{{ event.next_contact.time }}
Run Code Online (Sandbox Code Playgroud)

然后我得到非本地化的时间

怎么解决?

Mar*_*tin 5

使用{{ event.next_contact|localtime|date:"H:i" }}.如果已设置USE_TZ=True,则可以跳过localtime过滤器.

Django 1.7开始传递带有附加时区信息的日期时间值(时区感知日期时间实例)时,time过滤器 将接受与时区相关的格式说明符'e','O','T'和'Z'.


sed*_*nym 5

不使用属性,只需time对日期时间使用过滤器:

{{ event.next_contact|time }}
Run Code Online (Sandbox Code Playgroud)