我的设置文件包含USE_TZ = True和TIME_ZONE ='GMT'。我有中间件检查用户的时区并将其设置为当前时区,这是正常工作。但是,当我从表单获取日期时间字段并将其存储在数据库中时,存储的时间是美国/东部而不是UTC。例如,如果我的用户的时区为US / Central,并且他们填写了一个包含日期时间字段的表单并选择上午8:00,则它将在上午9:00存储在数据库中。它应存储在数据库中的13:00(下午1点),因为在夏令时期间,从US / Central到UTC的偏移现在是5小时。相反,它仅偏移1小时,这表明美国/东方。
非常感谢任何帮助。
答案 0 :(得分:1)
我只是发现它实际上工作正常,但是django admin中显示的时间与我当地的时间有关,因此混乱。存储在数据库中的时间实际上是正确的偏移UTC。新秀错了,但我是新秀。