问题标签 [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.
python - 查询集中的 Django 非 UTC 时区感知日期
我正在使用 Postgres 运行 Django。
- 我想要从数据库返回时区感知日期时间对象。
- 我希望查询集中的所有日期时间都设置为用户的语言环境,而不是 UTC。
- 如果我在设置中设置,我可以在查询集中获得时区感知日期
USE_TZ=True
,但它们都是 UTC。- 如果
USE_TZ=False
和 setTIME_ZONE='America/New_York'
,我可以在用户正确的语言环境中得到我的结果,但日期都是幼稚的。
默认情况下,如何在我的查询集中返回的用户语言环境中获取时区感知日期时间?
循环遍历结果并手动设置它们不是一种选择。实在是太慢了
我对 Django 在渲染时(即在模板或序列化程序中)将日期转换为用户时区的能力不感兴趣。我需要处理视图之前的时区偏移日期。
注意:我想我已经阅读了有关此主题的整个 Internet,并发现了一篇 SO 帖子(Ouput timezone aware django datetime fields without filters)与我想解决的问题很接近,但没有提供解决方案。
javascript - 如何将 django current_timezone 设置为系统时区
我有显示从视图发送的时间的模板。views.py 包含以下代码
这将显示时区“亚洲/加尔各答”的时间。现在时区由我设置。我想将当前时区设置为笔记本电脑的时区。
那就是我希望时区随笔记本电脑的时区而改变。我试图读取系统时区,但所有方法都给出了 django 通过激活设置的当前时区(此处为 'Asia/Kolkata' )。
你能帮帮我吗?
python - Django 表单验证失败 - pytz 和选择
我试图让用户设置他们所在的时区,但是表单验证.is_valid()
失败并且无法弄清楚原因。
- 用户的时区值存储在 Profile 模型中。
- 使用
ChoiceField
和pytz.common_timezones
填写表单域
这看起来很简单,唯一与我通常的方式不同的是填充组合/选择框ChoiceField
的数据是使用 a 并且数据来自pytz
.
我可能会切换到django-timezone-field来解决这个问题,但我想了解它为什么会失败。我在下面包含了所有相关(我认为)的代码。有什么建议么?
模型.py
表格.py
视图.py
模板
python - 转换为本地时间 django 查询集
我在我的以下模型定义models.py
在我settings.py
有
我想获得特定时区的时间。现在,如果我称它为Blog.objects.all()
所有时间的UTC
格式。但我想要请求的用户时区的时间。
我知道有可用的过滤器和标签。但正如我所做的那样,rest_framework
我认为我需要能够在Queryset
.
有什么帮助吗?
编辑:
到目前为止,我已经编写了这样的查询集
它不会将数据转换Europe/Madrid
为时区。但将数据输出到时UTC
区。
所以我检查了timzone.template_localtime(value, use_tz=None)
定义。
对我来说 use_tz 正在传递一个对象tzinfo
,但是value
ExpressionWrapper(F(created))
django - Django没有在db中存储确切的UTC时间
我有一个 Django API/PostgreSql 项目,我尝试以 UTC 格式存储日期时间,稍后我将在前端使用角度转换为正确的时区。
我目前的设置是:
我第一次使用 UTC,但由于某种原因,日期时间存储为 +1 小时,所以我将时区设置为我的服务器时区
模型:
但是当我检索插入的记录时,时间还是晚了-3分钟。
当我使用下面的代码时,它会存储正确的时间:
我在配置中遗漏了什么吗?我应该使用什么 TIME_ZONE,服务器位置 time_zone,还是与服务器时间设置有关?
django - 如何更改 Django 的启动服务器时间格式?
当我使用以下命令启动 django 服务器时:
它显示当前时间喜欢:
但我想查看时间格式:
我该怎么做?
谢谢
python - 如何使用 Django ORM 查询将 UTC 时区 DateTime 转换为本地时区
此日期时间位于 UTC 时区,我想将此日期时间转换为使用查询转换的本地时区。
python - Django-rest-framework '期望一个`date`,但得到一个`datetime`。拒绝强迫,'
我正在使用 django-rest-framework 并尝试使用我的时区日期作为Date字段的默认值,但我无法这样做。对于DateTime字段设置,default=timezone.now可以完美运行,但对于Date字段,它会在序列化中出现错误。
'期望一个date
,但得到一个datetime
。拒绝强迫”
time = models.DateTimeField(default=timezone.now)
这个作品
date = models.DateField(default=timezone.now)
但这不起作用
date = models.DateField(default=timezone.datetime.today)
即使这样也行不通。
django - Django时区当天差异不为0
测试功能
结果
为什么同一天 2 个日期时间之间的差异不返回 0 ?
django - Django 单元测试:`freeze_time` 在某些情况下效果不佳(看起来像一个错误..?)
这是我测试TIME_ZONE
和`USE_TZ的作用的代码:
结果
奇怪的部分是test_freeze_time1()
,在 下进行测试TIME_ZONE='UTC', USE_TZ=True
,我认为奇怪的原因是它datetime.now()
没有打印出UTC
时间,如果我删除了这不是真的@freeze_time("2018-01-04 13:30:55", tz_offset=9)
:
结果
正如您在此处看到的,两者都UTC
在条件下打印出时间TIME_ZONE='UTC', USE_TZ=True
。
其他设置似乎运行良好。
或者,我错过了什么吗?