Ответ 1
См. вопрос № 2 в разделе "Использование" в документах Django.
>>> from django.utils import timezone
>>> timezone.localtime(timezone.now())
Мой сервер находится в Лондоне.
В моем settings.py
у меня есть:
TIME_ZONE = 'Europe/Moscow'
USE_TZ = True
Но когда я это делаю:
from django.utils import timezone
print timezone.now().hour
Он печатает Лондонское время. Что я делаю неправильно?
UPDATE:
>> timezone.now()
datetime.datetime(2013, 4, 16, 12, 28, 52, 797923, tzinfo=<UTC>)
tzinfo = <UTC>
, может быть, он печатает не Лондонское время, а UTC +0 раз? Во всяком случае, как сделать django показом московского времени?
Кроме того, когда я рисую шаблон с now = timezone.now()
.
{{ now.hour }}
печатает, например, 12 (лондонское время)
{{ now|date:"G" }}
печатает 16 (по московскому времени)
См. вопрос № 2 в разделе "Использование" в документах Django.
>>> from django.utils import timezone
>>> timezone.localtime(timezone.now())