我正在尝试为我的一个django模型设置DateTimeField。我的代码如下所示:
dt = datetime.fromtimestamp(mktime(parsed_feed.updated_parsed))
feed.updated = dt
updated_parsed是格式为struct的结构:
time.struct_time(tm_year=2016, tm_mon=4, tm_mday=26, tm_hour=8, tm_min=20, tm_sec=43, tm_wday=1, tm_yday=117, tm_isdst=0)
更新显然是django DateTimeField。我试图将结构转换为日期时间对象,然后将其设置为我的字段。一切都运行良好,并设置了正确的日期和时间,但是,我在控制台中收到此错误(警告):
RuntimeWarning: DateTimeField Feed.updated received a naive datetime (2016-04-26 08:25:08) while time zone support is active.
RuntimeWarning)
如何将时区支持集成到日期时间对象(dt)?
答案 0 :(得分:1)
如this answer中所述:
以下行创建了一个天真(非时区感知)日期时间:
creationDate = datetime.datetime.now()
尝试将该行更改为:
creationDate = timezone.now()
请勿忘记在代码开头导入时区:
from django.utils import timezone
答案 1 :(得分:-1)
使用pytz包。 所以在你的观点中导入pytz。
t = pytz.timezone('Europe/Warsaw').localize(
datetime(2013, 5, 11, hour=11, minute=0))
您的时区应在settings.py中设置 datetime and timezone conversion with pytz - mind blowing behaviour