首页 > 解决方案 > Django 为通过查询集访问的对象提供不同的日期值

问题描述

上下文 当我以不同方式访问它们时,我会得到不同的日期时间字段值。我确信这里有一些 UTC 边缘魔法。

(Pdb++) 
Foo.objects.all().values_list('gated_out__occurred__date')[0][0]
datetime.date(2021, 9, 9)
(Pdb++) Foo.objects.all()[0].gated_out.occurred.date()
datetime.date(2021, 9, 10)

编辑:他们有相同的PK

Foo.objects.all().order_by("pk")[0].gated_out.occurred.date()
datetime.date(2021, 9, 10)
(Pdb++) Foo.objects.all().order_by("pk").values_list('gated_out__occurred__date')[0][0]
datetime.date(2021, 9, 9)

我如何修复/弄清楚发生了什么?

标签: djangodjango-querysetutc

解决方案


推荐阅读