django的timezone.now没有显示正确的时间 [英] django's timezone.now does not show the right time
问题描述
我的服务器位于伦敦。
在我的 settings.py
中我有:
TIME_ZONE ='欧洲/莫斯科'
USE_TZ = True
但是当我这样做:
from django.utils import timezone
打印timezone.now()。小时
打印伦敦的时间。我做错了什么?
更新:
>> timezone.now()
datetime.datetime(2013,4,16,12,28,52,797923,tzinfo =< UTC)
tzinfo =< UTC>
,所以也许打印不是伦敦时间,但UTC的+0时间?无论如何,如何使django显示莫斯科时间?
此外,当我使用现在渲染模板= timezone.now()
。
{{now.hour}}
打印,例如12(伦敦时间) p>
{{now | date:G}}
打印16(莫斯科时间)
请参阅用法部分。
>>>来自django.utils import timezone
>>>> timezone.localtime(timezone.now())
My server is in London.
In my settings.py
I have:
TIME_ZONE = 'Europe/Moscow'
USE_TZ = True
But when I do this:
from django.utils import timezone
print timezone.now().hour
It prints London's time. What do I do wrong?
UPDATE:
>> timezone.now()
datetime.datetime(2013, 4, 16, 12, 28, 52, 797923, tzinfo=<UTC>)
tzinfo = <UTC>
, so maybe it prints not London time, but UTC's +0 time? Anyway, how to make django show Moscow time?
Also, when I render template with now = timezone.now()
.
{{ now.hour }}
prints, for example, 12 (London time)
{{ now|date:"G" }}
prints 16 (Moscow time)
See question #2 in the "Usage" section of the Django docs.
>>> from django.utils import timezone
>>> timezone.localtime(timezone.now())
这篇关于django的timezone.now没有显示正确的时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!