问题标签 [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:无法理解 TIME_ZONE 配置
我已经测试了一些时区配置,以更好地了解 django 时区的工作原理。
但仍然无法理解它是如何工作的。
有一些问题需要您的帮助
Q1。
=> 为什么'UTC'
返回naive
日期时间对象...?就像在 2 中一样,我认为它应该返回tzinfo=<UTC>
对象......
Q2。
=>为什么在第一种情况下timezone.now()
返回tzinfo=<UTC> object
,即使我设置TIME_ZONE
为'Asia/Seoul'
?
Q3。
为什么即使我设置了它也会发生错误TIME_ZONE
?
USE_TZ
此外,即使在阅读 django 官方文档之后,也无法理解到底是什么(它的角色..等)。我认为官方文档就像,只有那些已经知道这些是什么的人才能轻松阅读.. T_T
django - Django 似乎没有考虑 DayLightSavings
在我的模型中,我想在每次保存对象时更新对象的last_edited
值。Submission
UserAnwser
为此,我编写了以下代码
我在settings.py
文件中设置了正确的时区:
但是,每次我更改答案并在我们的 django-rest api 中查找 submit.last_edited 值时,时间都会比实际时间晚 1 小时。就好像时间显示在“夏令时”中,而 DST 处理不正确。例如,如果我在 编辑答案13:30
,我们的 api 将返回12:30
由于settings.TIMEZONE
已经设置并且我正在使用 django 的 django.utils 时区对象,它应该都可以工作。
特别是因为管理中显示的时间是正确的,所以它在我们的 API 中的某个地方出错了。然而,我们的序列化程序没有对退出做任何事情,所以我不清楚它哪里出错了。
有人能指出我正确的方向吗?
python - 我如何在 timezone.now() 前 1 天获得
我有一个按钮,应该在模型对象的 start_date 前 1 天出现。在我看来,我有一个函数可以告诉我对象的 start_date 或 end_date 是现在。
而不是这个,我需要检查今天是否是开始日期或结束日期的前一天。有任何想法吗?谢谢
python - Django 时区字段不接受所有 pytz 时区
Django 时区字段基于pytz timezones构建,但后者的某些时区对字段无效。像这样的模型
如果我运行(在外壳中)
我明白了
所以它首先失败'Africa/Asmera'
(它也失败了其他人,例如'GMT+0'
)。
知道如何解决这种不一致吗?目前,用户可以在前端选择一个时区,这将导致后端错误(前端内置于 React 并从时刻 timezone获取时区)
python - 为什么时间仍然显示 UTC 时区而不是 settings.TIME_ZONE?
__str__()
我有一个模型,它在模型的方法中显示一个短字符串
当我去Django admin时,我在标题中看到Task: Scheduled at September 30 2018 12:30 AM并且在输入中填充了正确的:20:30 TIME_ZONE
: 00
设置.py
他一直显示 UTC 时区的时间,但是我TIME_ZONE='Etc/GMT+4
在我的设置中设置。
在我的情况下,我希望将时间数据作为 UTC 保存在数据库中并用 TIME_ZONE 显示它们Etc/GTM+4
python - datetime.now() 和 db 中的 datetimefield 之间的比较和区别
我找不到任何适合我的答案。我正在尝试使用 datetime.now() 检查创建的帖子的日期时间之间的差异
我想在 view.py 中做的例子
我尝试过使用 timedelta 的东西。还尝试了使用日期时间格式的 strptime。没运气
当我打印 datetime.now() 我得到: 2018-12-10 20:22:10.535052 而 post.created_at: 2018-12-10 20:18:52:544396+00:00
我如何使它们具有可比性?
python - Django DateTimeField 说“你比服务器时间提前 5.5 小时。”
在我的一个模型中,我正在存储time_stamp = models.DateTimeField(default=timezone.now)
但是当我保存模型时,它说You are 5.5 hours ahead of server time.
例如我机器中的本地时间是,13:02
但是在保存存储在数据库中的内容之后是7:16
我在这里找到了一个相关的,但它没有一个令人满意的答案......
模型.py
django - pre_save 信号中的 datetime.time() 比较问题
我有这些模型:
主要目标是:
创建a 时CheckIn
,代码应检查它是否在给定的时间间隔内。我需要比较这两者并返回它们的%H:%M:%S
格式差异。
到目前为止我所做的:
CheckIn
由于在保存之前我有不同的场景如何处理给定的内容,因此我正在使用pre_save
信号并且时间比较是这些场景的一部分。这是一个伪:
instance.date_time
是一个时区感知日期,因为我可以打印它tzinfo
返回UTC
而不是 Europe/Sofia
我TIME_ZONE
的设置,我不知道为什么。
所以我手动尝试通过以下方式设置它tz
:
我尝试的第二件事是转换instance.interval.from_time
为有意识的日期时间,然后比较两个日期time()
。
现在两者dt1
都dt2
知道,但比较它们仍然没有运气。这是完整的代码:
dt1
即使两个日期时间都知道正确的时区,我如何才能获得正确的时间并使这种比较正常工作?
编辑:我有USE_TZ = True
我的设置。
django - django 表单:带有感知日期时间的错误消息
我正在尝试在我的表单错误消息中添加日期时间。不幸的是,它以 UTC(我的 TIME_ZONE)呈现,但应该在当前时区。
print(get_current_timezone())
返回Europe/Berlin
print(self.instance.journey.start.tzinfo)
返回UTC
当前时区已激活。是否有任何等于localize()
将日期时间对象转换为当前时区?