Неверное время даты в приложении Django при развертывании

У меня есть модель django с полем datetime следующего вида:

date_creation = models.DateField(auto_now_add=True)

Локально, на моей машине, этот элемент управления создается с локальной датой и временем.
При развертывании приложения поле не создается с локальным временем.
Я пытался сделать следующее:

date_creation = models.DateField(default=datetime.now())

Не работает. Как решить эту проблему? Я нахожусь в центральной Африке

Вам следует передать callable, так что вы можете передать now функцию, или лучше now функцию утилиты timezone Django:

from datetime import datetime

class MyModel(models.Model):
    date_creation = models.DateField(default=datetime.now)

или с timezone.now(…) [Django-doc]:

from django.utils.timezone import now

class MyModel(models.Model):
    date_creation = models.DateField(default=now)

Однако, вероятно, лучше указать часовой пояс в настройках с:

# settings.py

USE_TZ = True
TIME_ZONE = 'Africa/Bangui'
Вернуться на верх