2017-03-03 48 views
1

我无法获得UTC时间转换为EST时间。我已经在我的服务器shell中成功完成了它,但是当我在我的视图中完成同样的事情时,它会继续打印出UTC时间,不知道我错过了什么。Django UTC时间不转换

views.py 

from django.utils import timezone 
import pytz 

def today(): 
    today_utc = timezone.now() 
    est = pytz.timezone('US/Eastern') 
    return today_utc.astimezone(est) 

def projections(request): 
    todays_date = today() 
    context = {'todays_date':todays_date} 
    return render(request, 'index.html', context) 

并在我的模板中,我只是做了一个简单的{{todays_date}},但它继续打印出UTC时间。

更新: 添加时区模板标签修复了这个问题,但我认为我的功能会照顾它。仍然有兴趣知道我做错了什么....

{% load tz %} 
{% timezone "US/Eastern" %} 
    {{todays_date}} 
{% endtimezone %} 

回答

0

您需要设置时区从settings.py

USE_TZ = False 

TIME_ZONE = 'US/Eastern' 
+0

这将是一种获得美国/东部时代的方式,但不是处理多个时区的好方法。 – Tom

-1

尝试使用这样的:

{{ todays_date|timezone:"America/New_York" }} 

参考documentation

+0

我们在哪里添加该代码? –