在Django mod中默认以本地时间输入当前日期时间

2024-03-29 14:30:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Django创建了一个模型,在这个模型中,我希望在本地时间中默认输入创建时间。我已经设置了以下内容设置.py公司名称:

TIME_ZONE = 'Asia/Kolkata'
USE_TZ = True

我试过以下方法:

^{pr2}$

这将始终为所有条目提供相同的日期时间(模型初始化的时间

class Status(models.Model):
    status = models.IntegerField(default=0, blank=True)
    active = models.IntegerField(default=1, blank=True)
    creation_date = models.DateTimeField(default=datetime.now)

这将以UTC表示日期时间

有人能告诉我默认情况下如何在列表中输入日期时间吗?提前谢谢


Tags: djangopy模型名称truedefaultzonetime
3条回答

你需要改变。在

USE_TZ = False

这样做将停止使用UTC 并且TIME_ZONE = 'Asia/Kolkata'将生效。在

Django docs中所述,auto_now_add使用默认时区填充。如前所述,here这是根据TIME_ZONE设置填充的。在

因此,我认为你的问题的答案是:

TIME_ZONE=Asia/Kolkota

creation_date = models.DateTimeField(auto_add_now=True)

其常见模式如下:

created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True)

相关问题 更多 >