Неверное время даты в приложении 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'