如何使用设置TIME_ZONE获取要显示的日期

时间:2019-04-10 19:08:10

标签: django python-3.x datetime timezone format

我正在使用Django和Python 3.7。我的设置文件中有以下设置...

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'America/Chicago'

USE_I18N = True

USE_L10N = True

USE_TZ = True

我希望所有日期都使用上面的默认时区显示。但是,当我打印出类似

的字段时
self.created_on.ctime()

其中“ created_on”映射到PostGres DATETIME字段,使用UTC时区打印日期。如何使用我所在的时区显示此内容?

2 个答案:

答案 0 :(得分:1)

TIME_ZONE是会话参数。了解更多herehere

from datetime import datetime
from pytz import timezone
self.created_on.astimezone(timezone('America/Chicago'))

答案 1 :(得分:0)

您似乎可以使用django.utils.timezone.localtime

from django.utils.timezone import localtime

localtime(self.created_on).ctime()