Две из моих моделей имеют поле даты и поле даты и времени.Они существуют в одном файле models.py, и я хотел бы установить их по умолчанию при добавлении в базу данных / в существование.Что еще более важно, я также хотел бы перезаписать эти поля для генерации моделей для их тестирования.
После некоторых исследований я начал использовать часовой пояс pytz и django.utils.Проблема, с которой я сталкиваюсь, - это ошибки времени выполнения, когда я пытаюсь перезаписать их, используя встроенный в python datetime (используя такие вещи, как timedelta и т. Д.).Поэтому я попытался преобразовать pytz.utc.localize (), но он пожаловался, что объекты datetime, которые я передал, были не наивными, но когда я возвращаюсь к своей исходной версии, он все равно выдает ошибку времени выполнения.Я нашел много способов преодолеть это, в основном используя такие вещи, как date = models.DateField(_("Date"), default=datetime.date.today)
, что требует import datetime
, но проблема здесь в том, что я также хочу использовать DateTimeField, а теперь просто DateField.Поэтому я бы использовал date = models.DateField(_("Date"), default=date.today)
, но для этого требуется from datetime import date
.Конфликт импорта, и все это мешает мне
class SomeTime(models.Model):
moment = models.DateTimeField(default=???, editable=True, blank=True)
class SomeDay(models.Model):
date = models.DateField(default=???, editable=True, blank=True)
Я хотел бы пойти
m = SomeTime()
m.moment = #some datetime that I set, It should not throw a runtime error
m.save()
d = SomeDay()
d.date = #some date that I set, It should not throw a runtime error
d.save()
Помимо простого создания этих объектов, SomeTime должен сохранять текущую дату / время до моментаи SomeDay должны сохранить текущую дату