Python 如何基于用户显示时间值';使用Django模板标记创建时区
我将所有计时保存到“UTC”时区的数据库中,但我希望每个用户都能看到该值转换为自己的时区。可以在Django中使用吗 我的设置.py:Python 如何基于用户显示时间值';使用Django模板标记创建时区,python,django,datetime,timezone,Python,Django,Datetime,Timezone,我将所有计时保存到“UTC”时区的数据库中,但我希望每个用户都能看到该值转换为自己的时区。可以在Django中使用吗 我的设置.py: 时区='UTC' 使用_I18N=True 使用\u L10N=True 使用_TZ=True 以下是我尝试过的: {% load tz %} <p> Leave on {{ request.date_time.date|localtime }} at {{ request.date_time.time|localtime }} </p&g
时区='UTC'
使用_I18N=True
使用\u L10N=True
使用_TZ=True
以下是我尝试过的:
{% load tz %}
<p>
Leave on {{ request.date_time.date|localtime }} at {{ request.date_time.time|localtime }}
</p>
{%load tz%}
在{{request.date|time.date | localtime}}于{{request.date|time.time | localtime}离开
但它给了我一个空白结果,当我删除
|localtime
部分时,它以UTC格式显示。有什么帮助吗?您还可以将时区
从Django
视图转换为用户的时区
,并将其传递到上下文
中,并在模板中使用该上下文
,如下所示
视图.py
from django.utils import timezone
local_time = timezone.localtime(your_datetime_object)
现在,您可以将local\u time
传递到上下文中,并在模板中使用它
如需更多参考,您可以您还可以从Django
视图
将您的时区
转换为用户的时区
,并将其传递到上下文
中,并在模板
中使用该上下文
,如下所示
视图.py
from django.utils import timezone
local_time = timezone.localtime(your_datetime_object)
现在,您可以将local\u time
传递到上下文中,并在模板中使用它
有关更多参考,您可以
localtime
模板标记不在日期
对象上操作。它在datetime
对象上运行。您应该在datetime对象上应用它,然后使用日期过滤器链接
{{ request.date_time|localtime|date:'Y-m-d' }} at {{ request.date_time|localtime|date:'H:i' }}
或者你可以
{% with local=request.date_time|localtime %}
<p>
Leave on {{ local|date:'Y-m-d' }} at {{ local|date:'H:i' }}
</p>
{% endwith %}
{%with local=request.date_time | localtime%}
在{本地}日期:'Y-m-d'}在{本地}日期:'H:i'}离开
{%endwith%}
localtime
模板标记不在日期
对象上操作。它在datetime
对象上运行。您应该在datetime对象上应用它,然后使用日期过滤器链接
{{ request.date_time|localtime|date:'Y-m-d' }} at {{ request.date_time|localtime|date:'H:i' }}
或者你可以
{% with local=request.date_time|localtime %}
<p>
Leave on {{ local|date:'Y-m-d' }} at {{ local|date:'H:i' }}
</p>
{% endwith %}
{%with local=request.date_time | localtime%}
在{本地}日期:'Y-m-d'}在{本地}日期:'H:i'}离开
{%endwith%}