Django时区本地化未按预期工作



我使用的是Django 1.4.3和Postgres 9.1.3。这里是我的模板,其中message.created_at是一个python datetime对象,它清楚地"告诉"我日期时间对象存储在GMT中,因为我可以通过在date过滤器中传递e来调试。虽然我使用了文档中给出的块和过滤器,但转换到我的本地时间IST并没有发生。它仍然以GMT显示日期时间值。我缺少什么?

{% load tz %}
{% localtime on %}
<div class="m_td_block">
    <span>{{ message.created_at|date:"D, d M, Y e" }}</span>
    <span>{{ message.created_at|time:"h:i A" }}</span>
</div>
{% endlocaltime %}

也尝试了另一种方法,

{% load tz %}
<div class="m_td_block">
    <span>{{ message.created_at|localtime|date:"D, d M, Y e" }}</span>
    <span>{{ message.created_at|localtime|time:"h:i A" }}</span>
</div>

这是我的设置,

TIME_ZONE = 'GMT'
USE_I18N = True
USE_L10N = True
USE_TZ = True

您是否正在执行activate以激活本地时区?看看这个。

好的。考虑到这些帖子#1,帖子#2,我将在注册时从用户那里手动获取时区并将其存储在数据库中。并将与timezone.activate(request.user.timezone)一起使用。

相关内容

  • 没有找到相关文章

最新更新