【发布时间】:2021-04-07 07:26:51
【问题描述】:
您好,我正在创建一个网站,并尝试在每次有人单击时钟按钮时将时钟及时保存到数据库中,但数据库中保存的时间减少了 8 小时。我该如何解决这个问题?
我使用 DateTimeField 的代码:
from django.db import models
from datetime import datetime, date
#Create your models here.
class Name(models.Model):
name = models.CharField(max_length=200)
timeIn = models.DateTimeField(auto_now_add=True, auto_now=False, blank=True)
def __str__(self):
return self.name
【问题讨论】:
-
数据库中存储的时间为UTC。所以时间差了 8 小时,因为您所在的时区与 UTC 相差 8 小时
-
我住在马来西亚,所以我要设置TIME_ZONE ='Malaysia'吗?
-
只要您在设置中设置了
USE_L10N = True,Django 就会尝试自动本地化您在模板中呈现的任何日期/时间值。见Format localization。如果项目是使用 `django-admin startproject` 创建的,则默认设置此设置,因此您很可能不需要做任何事情。至于数据库中的时间是UTC?就这样吧,无论如何你都会根据用户的语言环境向他们显示时间。
标签: python django django-models