4

我正在使用 Postgres 运行 Django。

  1. 我想要从数据库返回时区感知日期时间对象。
  2. 我希望查询集中的所有日期时间都设置为用户的语言环境,而不是 UTC。
  3. 如果我在设置中设置,我可以在查询集中获得时区感知日期USE_TZ=True,但它们都是 UTC。
  4. 如果USE_TZ=False和 set TIME_ZONE='America/New_York',我可以在用户正确的语言环境中得到我的结果,但日期都是幼稚的。

默认情况下,如何在我的查询集中返回的用户语言环境中获取时区感知日期时间?

循环遍历结果并手动设置它们不是一种选择。实在是太慢了

我对 Django 在渲染时(即在模板或序列化程序中)将日期转换为用户时区的能力不感兴趣。我需要处理视图之前的时区偏移日期。

注意:我想我已经阅读了有关此主题的整个 Internet,并发现了一篇 SO 帖子(Ouput timezone aware django datetime fields without filters)与我想解决的问题很接近,但没有提供解决方案。

4

0 回答 0