RuntimeWarning:DateTimeField 收到一个天真的日期时间,具有正确的时区和设置
Posted
技术标签:
【中文标题】RuntimeWarning:DateTimeField 收到一个天真的日期时间,具有正确的时区和设置【英文标题】:RuntimeWarning: DateTimeField received a naive datetime, with correct timezone and settings 【发布时间】:2021-02-17 21:40:24 【问题描述】:我收到此错误消息:
RuntimeWarning:DateTimeField Z.data_zal 收到一个幼稚的日期时间 (2020-11-05 07:13:24) 当时区支持处于活动状态时。 warnings.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
模块而不是timezone
时会发生此错误。
有时问题出在错误的settings.py
但我正在运行:
TIME_ZONE = 'Europe/Warsaw'
USE_TZ = True
似乎是什么问题?
【问题讨论】:
【参考方案1】:不要 .strftime() 你让 timezone.now() 天真。 https://docs.djangoproject.com/en/3.1/topics/i18n/timezones/
【讨论】:
那我该如何设置日期时间格式呢?我需要以这种格式 '%Y-%m-%d %H:%M:%S' 将它提供给模型 不,你没有......如果你的模型字段 data_z 是 models.DateTimeField() timzone.now() 就足够了以上是关于RuntimeWarning:DateTimeField 收到一个天真的日期时间,具有正确的时区和设置的主要内容,如果未能解决你的问题,请参考以下文章
Pycharm 更新到 2016.2 后导入 RuntimeWarning
Django 中 DateField 的 RuntimeWarning
RuntimeWarning:DateTimeField 收到一个天真的日期时间,具有正确的时区和设置