#django #datetime
#django #дата и время
Вопрос:
Я получаю это сообщение об ошибке:
Предупреждение о времени выполнения: поле DateTimeField Z.data_zal получил наивное значение даты и времени (2020-11-05 07:13:24), пока активна поддержка часовых поясов. предупреждения.warn(«Поле DateTimeField %s получило наивное значение даты и времени (%s)»
На этом этапе создания экземпляра моей модели: views.py
from django.utils import timezone
t = Z(data_z=timezone.now().strftime('%Y-%m-%d %H:%M:%S'), data_r=data_r, author=request.user)
try:
t.save()
Итак, насколько я знаю, эта ошибка возникает при использовании datetime
module вместо timezone
.
Иногда проблема заключается в неправильном settings.py
, но я бегу:
TIME_ZONE = 'Europe/Warsaw'
USE_TZ = True
В чем, по-видимому, проблема?
Ответ №1:
Не .strftime() вы делаете timezone.now() наивным. https://docs.djangoproject.com/en/3.1/topics/i18n/timezones /
Комментарии:
1. Как мне тогда установить формат даты и времени? Мне нужно предоставить его модели в таком формате ‘%Y-%m-%d% H:%M:% S’
2. нет, вы этого не делаете … если ваше поле модели data_z является models . DateTimeField() timzone.now() будет достаточно