Django default = timezone.now () сохраняет записи, используя «старое» время
Эта проблема возникала и исчезала в течение нескольких недель, и она не похожа ни на одну из моих проектов.
Две из используемых моделей имеют поле метки времени, которое по умолчанию установлено наtimezone.now()
.
Эта последовательность вызывает флаги ошибок:
Модель первая создана в 19:30.
Вторая модель создается в 22:00, но в базе данных MySQL она хранится в 19:30!
Каждая созданная модель имеет свою метку времени, сохраненную в 19:30, а не фактическое время, пока не пройдет определенная продолжительность. Затем устанавливается новое время, и все следующие модели имеют это новое время ... Bizzare
Некоторые дополнительные детали, которые могут помочь в обнаружении проблемы:
У меня есть куча методов, которые я использую, чтобы лишить свои часовые пояса ихtzinfo
и замените их на UTC.
Это потому что я делаюtimezone.now() - creationTime
расчет для создания в проекте функции "модель была опубликована давно". Однако это действительно не должно быть причиной проблемы.
Я не думаю, используяdatetime.datetime.now()
будет иметь значение либо.
В любом случае спасибо за помощь!