如何在存储在数据库中的UTC日期时间显示django模板中的本地日期时间?

时间:2017-08-28 09:50:25

标签: python django datetime django-templates

我想在数据库中以UTC格式存储的日期时间在DJango模板中显示访问者本地时区的日期时间。因为我在不同的文件中做了以下更改。

settings.py

TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True

page.html中

{% load tz %}
<div>
    {{ start_time | localtime }}
</div>

and

<div>
    {% localtime on %} 
        {{ start_time }}
    {% endlocaltime %}
</div>

由于此start_time仅以字符串格式存储“HH:MM”。但我也尝试过日期时间对象。它仍然不适合我。

还有一个问题,当我使用datetime.utcnow()datetime.now()时,两者都会在 views.py 中为我提供'UTC'日期时间。

或建议我,如果有其他方法可以获得相同的结果?

所以有人可以帮我解决这个问题吗? 任何帮助都将受到高度赞赏。

谢谢。

1 个答案:

答案 0 :(得分:-1)

你必须使用django timezone module

from django.utils import timezone

now = timezone.now()