如何格式化Django的timezone.now()

时间:2019-08-21 11:01:07

标签: python django

我正在尝试使用时区感知日期自动填充Django datetimefield。 使用Django的timezone.now()输出Aug. 21, 2019, 5:57 a.m.。如何将其转换为2019-08-21 14:30:59

3 个答案:

答案 0 :(得分:1)

您可以使用以下代码:

from datetime import datetime

date_string = datetime.strftime(timezone.now(), '%Y-%m-%d %H:%M:%s')

链接-Ref

答案 1 :(得分:1)

如果要在后端进行转换,可以使用Django的内置实用程序dateformat

from django.utils import timezone, dateformat

formatted_date = dateformat.format(timezone.now(), 'Y-m-d H:i:s')

答案 2 :(得分:0)

不清楚你在问什么。您的示例也显示了不同的格式和不同的时间值。尽管时间值差异看起来不像本地时间和 UTC 时间之间的差异,但我假设问题的一部分是时区之间的转换。

from django.utils import timezone
d = timezone.now()
print(d)
print(d.strftime("%Y-%m-%d %H:%M:%S"))
print(timezone.localtime(d).strftime("%Y-%m-%d %H:%M:%S"))

输出是

2021-01-13 07:25:17.808062+00:00
2021-01-13 07:25:17
2021-01-13 18:25:17