Django 1.7, PostgreSQL.Django и часовой пояс
Я хочу хранить дату и время в UTC и отображать его в часовом поясе PST.
Мой местное время: 8:05 утра
UTC Время: 1:05 утра
PST Время: 6:05 вечера
Джанго документ:
When support for time zones is enabled, Django stores date and time
information in UTC in the database, uses time-zone-aware datetime objects
internally, and translates them to the end user’s time zone in templates
and forms.
установка. py
USE_TZ = True
TIME_ZONE = 'US/Pacific'
Поле модели
created_at = models.DateTimeField(auto_now_add=True)
Я создал новую модель, и в django admin она отображает время PST (6:05 pm). Все хорошо. Но если да, то:
select created_at from my_table where id = 1;
Отображается мое местное время (8:05)! Итак, я не уверен, что это было сохранено в UTC.
И еще одно.
Обычная DateTime поле, я поставил в админ эту дату: 2014-10-25 18:00:00
Id отображается в админ 25 октября, 2014, 6 часов вечера
Но выбрать из БД показать мне:
2014-10- 08: 00: 00,0
Так, я определенно не понимаю, что происходит. Где моя ошибка?
Как вы делаете 'select'? Возможно ли, что клиент, с которым вы работаете, конвертирует сохраненное время в свое местное время? –
@KevinChristopherHenry Я выбираю с psql (программа командной строки postgres), я думаю, что это не делает преобразования времени. – Tom