2016-08-24 2 views
0

Я копирую данные из одной таблицы MySQL в другую в Django.Поле datatime Django загружается 7 часов

article = Article.objects.get(id=10) 
article2 = ArchivedArticles(title=article.title, content= article.content, publishdate = article.publishdate) 
article2.save() 

Однако дата печататься в ArchivedArticles таблицы изменяется на 7hours + , например, если дата печататься в таблице статей «2016-08-23 17:58:00» в ArticleArchived таблице она «2016-08 -24 00:58:00'

publishdate для обеих таблиц определяется в моделях, как

publishdate = models.DateTimeField(null=True, db_column='PublishDate', blank=True, editable=False, verbose_name="Date") 

и MYSQL это, как показано ниже для обеих таблиц

publishdate TIMESTAMP NOTNULL Default = '0000-00-00 00:00:00' 

Любая идея, почему это происходит?

+0

Является ли часовой пояс правильной в settings.py? –

+0

Помните, что MYSQL сохраняет столбцы datetime в UTC, иначе изменение часового пояса было бы кошмаром. Это проблема. Что вы видите при чтении данных с помощью своего приложения – RiggsFolly

+0

Да. В settings.py указывается как TIME_ZONE = 'America/Los_Angeles' –

ответ

0

Я изменил тип поля на «DateTime» с «TimeStamp» в обеих таблицах, и он исправлен.

Смежные вопросы