问题标签 [django-timezone]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 模板中显示的每个用户的 django 和时区
这是我正在尝试做的事情:
- 我希望日期时间以 UTC 格式存储在数据库中。
- 我希望它们显示在美国/东部时区供管理员使用。
- 每个用户都有一个时区字段,所以我想在他们连接时显示他们的时区的时间。
我从 settings.py 文件开始:
看起来#1和#2没问题。
对于#3,我尝试在模板中使用类似的东西来显示用户时区的时间,但它似乎不起作用。
python - 确定 Django 如何格式化时区
我有一个具有以下相关设置的 Django 1.6 项目:
我有一个名为session
.datetime 字段的对象start
。
我想在项目的本地时区显示该日期时间,
到目前为止,一切都很好。现在我希望将本地日期时间显示为 unicode 字符串。
我的问题是,-07:00
我不希望时区显示为PDT
. 我怎样才能改变这个?
理想情况下,我只想使用DATETIME_FORMAT
. 日期格式字符串的文档说e
“可以是任何格式,或者可能返回一个空字符串,具体取决于日期时间”,但它没有建议我如何指定我想要的格式。
python - 如何在django中获取相对于时区的一天的记录
我正在尝试使用以下内容记录某一天的所有记录:
当我这样做时,我在控制台中收到以下警告:
在时区支持处于活动状态时,DateTimeField 收到了一个简单的日期时间。
我知道我可以添加类似的内容:,day_start = entered_at.replace(hour=00, minute=00, tzinfo=<UTC>)
但是,如果我使用 UTC,这不会使从午夜到晚上 11:59 的范围相对于用户时区。
我如何表达相对于用户时区的一整天?
python - 为什么时区感知日期时间在 Django 中有 2 次
我将日期设置为午夜,如下所示:
我打印日期,它看起来像这样:
开始日期:2014-08-21 00:00:00-07:00
最后的 -7:00 是什么,我如何让它消失?
django - 来自系统的 Django 不正确的天真时区?
我正在尝试在 Intranet 系统中使用时间,该系统将在不同的时区运行独立的服务器/系统。因为时区很痛苦,而且我对时间的使用相当简单(例如,向用户显示他们上次修改文件的时间),所以我想我会使用幼稚的时间。然而,Django 提出的幼稚时区是不正确的。
设置.py:
从 Django 控制台,我运行os.getenv('TZ')
并返回'America/Chicago'
,尽管计算机设置为America/New_York
. (如果我date
在命令行中调用,则表明我在 EDT。)因此,当我调用timezone.now()
或datetime.datetime.now()
结果是提前一个小时。(当我调用timezone.is_aware()
其中任何一个时,它确实返回False
。)
我的问题:为什么这个时区相对于系统时间不正确,有没有办法修复它?
python - django-timezone-field 得到错误 unicode object has no attribute zone
我无法对在 django 1.7 中使用 django-timezone-field 的模型对象之一进行迁移
我在这里找到了解决方案: https ://github.com/mfogel/django-timezone-field/issues/12
我安装了 django-time-field 的分叉版本,它解决了这个问题: https ://github.com/mfogel/django-timezone-field/issues/12
我现在得到错误: unicode object has no attribute zone
和'unicode' object has no attribute 'localize'
我这样称呼这个领域:timezone.activate(customer.time_zone.zone)
我的模型看起来像:
如果这个分叉不好,我该如何迁移?除了时区字段还有其他解决方案吗?
python - handle django time zone with char field or django-time-zone field?
I have been using django-time-zone for some time, but I am now experiencing a lot of problems with django 1.7
https://github.com/mfogel/django-timezone-field
I get the feeling that since Django doesn't have official support for a time zone field this is something I should handle with a char field and pytz.
Is this assumption true? Or should I continue to use django-time-zone?
django - Postgresql date_trunc 通过 Django 的 connection.cursor() 在自定义函数中调用
date_trunc
我创建了一个自定义 Postgresql 函数,该函数执行一些计算并使用该函数确定一个月的开始。在开发自定义函数时,我从使用 psql 建立的数据库连接中检查了它,它工作得很好。虽然这样的连接我得到以下输出:
这正是我想要的:它给了我所在时区的月初。如果我尝试在 django shell 中做同样的事情(我使用的是 psycopg2 连接器),我会得到不同的结果:
如您所见,数据库以 UTC 时间返回月初,导致与我想要的实际时间戳有两个小时的偏移量。
这是 django 将数据库连接的时间戳设置为 UTC 的结果,这会导致date_trunc
在 UTC 时间截断月份。我尝试使用 手动设置连接的时区SET TIMEZONE TO 'Europe/Berlin'
,但这会导致AssertionError("database connection isn't set to UTC")
.
以下解决方法在我的情况下确实有效,但它并不是一个真正的解决方案。它只有效,因为我不需要函数的任何返回值。
我希望有人可以帮助我找出一种更优雅的方法来解决问题。
python - Django 时区显示不正确
在我的 Django 应用程序中,我设置了USE_TZ = True
和TIME_ZONE = 'Europe/Berlin'
.
我的日期和时间显示如下:
在我看来,根据指定的时区,日期和时间应该显示如下:
我尝试了以下方法:
这给了我一个结论,时区无法识别。
但这是为什么呢?我正在使用pytz
已安装的 Gentoo Linux。
如您所见,时区已在我的系统上相应设置。
django - Django:timezone.now() 即使在知道 timedate 对象之后也不合适
Datetime 对象以 UTC 格式存储,并在显示时转换为本地时区。因此,当我调用时timezone.now()
,它应该将 UTC 转换为本地时区并相应地显示时间。
我已经pytz
按照 django 的建议安装了。
我做了以下事情:
设置USE_TZ = True
在settings.py
并在models.py
我将对象保存到数据库的位置
from django.utils import timezone
time= timezone.now()
也做过timezone.activate(pytz.timezone("America/Los_Angeles"))
当我获取存储的时间时,它是2014-10-01 00:50:37
,比现在时间早几个小时。我哪里错了?