管理部分中的时间不匹配

Tms91

我正在Django中构建一个应用程序,该应用程序托管在Heroku上。我不得不在Heroku上重置数据库后开始出现问题。

在此处输入图片说明

该应用程序通过API获取一些数据,然后将其与记录的时间和日期一起保存到模型中。该模型在其对象名称中显示时间和日期。

Last_update_time = models.DateTimeField(blank=False, null=False, default=timezone.now )

def __str__(self): 
    return  "%s --- [ %s ]"  %  (self.Target_area_input_data.Name, datetime.strftime(self.Last_update_time, "%H:%M:%S %d-%m-%Y") )

然后,该信息将显示在模板中。

模板中显示的时间是正确的(它对应于我的PC时钟显示的时间,在示例中为22:33),但是当我在Django admin中访问模型时,时间早了两个小时(示例中的20:33) )。

在此处输入图片说明

奇怪的是,当我访问对象字段视图时,时间是正确的(示例中为22:33)。

在此处输入图片说明

可能是什么问题呢?

在我的设置中,我有:

TIME_ZONE = 'Europe/Berlin'
USE_TZ = True

我试图改变

USE_TZ = False

only resulting in the time in the object fields view being two hours earlier (20:33 in the example), like the others, and the message "you are 2 hours ahead from the server time" appearing.

UPDATE:

Maybe I was wrong and the database reset has nothing to do with this error.

However, I am sure that since I have in settings:

TIME_ZONE = 'Europe/Berlin'
USE_TZ = True

The database shows correct time for its objects, even if the view of the model objects list of Django admin shows the time in UTC. (I am not sure if there is a way to set the timezone for time appearing inside the name of the model objects).

Tms91

Actually I was wrong: the database reset has nothing to do with this error.

事实证明,Django本身不允许更改管理员的时区,因为管理员使用的所有时间数据都具有相同的界标。就像所有管理员都应使用相同的度量单位一样。

但是,如此处建议的那样,可以为每个管理员用户设置时区,以便每个管理员都能看到根据其时区表示的admin部分的日期数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章