Django 1.7,PostgreSQL.
我想将日期存储在UTC中,并将其显示在PST时区。
我当地时间:上午8:05
世界协调时间:凌晨1时05分
时间:下午六时零五分
Django doc:
When support for time zones is enabled, Django stores date and time
information in UTC in the database, uses time-zone-aware datetime objects
internally, and translates them to the end user’s time z
我使用的是django模型。django设置中的时区为UTC。并通过做一些算术来构造时间戳。
return queryset.annotate(
**{f"server_time":RawSQL(
f'''
SELECT TO_TIMESTAMP((FLOOR((EXTRACT(EPOCH FROM "{gmdts_table}"."date_key" AT TIME ZONE %s) + %s) / %s)::INTEGER * %s
我有一个Django (v1.10.6)项目,其中包含一些带有日期时间字段的模型,例如:
created_at = models.DateTimeField(auto_now_add=True)
存储在没有时区信息的PostgreSQL数据库中:
created_at timestamp without time zone NOT NULL
postgresql.conf
timezone = 'UTC'
我希望我的应用程序的所有日期都以America/Bogota时区显示(它不应该依赖于用户的实际时区),因此我的settings.py文件具有以下配置:
TIME_ZONE =
我有一个rails应用程序,它在postgres db上工作。我有一个名为UserTimings的模型,其中有两个字段from_time和to_time。
t.time "from_time"
t.time "to_time"
我预计时间将以完整的UTC格式存储,并提供时区信息。过了一会儿,我意识到数据库有这种SQL查询来创建表。
from_time time without time zone,
to_time time without time zone,
我不想这样。我想用时区存储。我想要UTC时间中的+0530东西,我不知道rails应用
我有一个有两个TimeFields的模型。我想在模板中显示时间差(即27分钟)。我看到了过滤时间,但它不工作;我认为它只接受日期时间,但我的模型只存储了时间。
对@HAL的回应:
'datetime.time' object has no attribute 'year'
Exception Location: C:\Python27\lib\site-packages\django\utils\timesince.py in timesince, line 32
我已经为此绞尽脑汁好几个小时了,决定寻求帮助。
我使用javascript日历允许用户选择日期和时间。现在,我希望这次是相对于他们的时区(我已经记录在一个数据库中)。但是,我无法思考如何存储输入。我知道我需要调整UTC的时间戳,mktime会向用户的时区吐出这个时间戳,但我有问题。
这就是我尝试过的:
$time = $_POST['datetime']; // Dont worry I will sanitize the input
echo $time.'<br>';
$timezone = "Canada/Pacific"; /
我有一个Django应用程序,需要支持不同的时区。我将事件保存到具有时间戳的数据库中,并根据这些时间戳发送通知。因为用户可以移动到不同的时区,所以我希望将时间戳存储为UTC时间,并在以后将它们转换为用户当前时区。如果我是正确的,PostgreSQL会自动将日期时间转换为UTC?目前,我得到一个错误RuntimeWarning: DateTimeField event.timestamp received a naive datetime (2022-02-15 15:00:00) while time zone support is active.。在保存时间戳时,我经常使用Django的ma
我试图理解AT TIME ZONE的行为,在这方面我发现Server和PostgreSQL之间有一些奇怪的行为差异。
为了演示起见,我产生了两个查询,一个用于Server,另一个用于PostgreSQL。
Server查询:
SELECT
[LocalTime],
[LocalTime] AT TIME ZONE 'W. Europe Standard Time' AS [LocalTimeWithOffset],
([LocalTime] AT TIME ZONE 'W. Europe Standard Time') AT TIME ZONE
我有一个带有时区感知DateTimeField的模型。每个对象可以使用不同的时区。我希望Django Admin以时区后缀(EST等)显示此字段,而不是在用户或服务器的本地时间。 我不想全局修改项目的时区本地化设置。这应该只适用于这一个字段。 This question涉及到类似的内容,但我对该解决方案持怀疑态度;它在初始化对象类时激活一个新的时区,这不允许更改每行的时区,并影响不是我感兴趣的特定字段的其他时间戳。
CREATE TABLE DIALOGUE_TABLE(EXPIRE_TIME TIMESTAMP);
以下代码片段位于存储的proc中:
PO_EXPIRETIME :- OUT PARAM of procedure a varchar2
SELECT TO_CHAR(SYS_EXTRACT_UTC(EXPIRE_TIME))
INTO PO_EXPIRETIME
FROM DIALOGUE_TABLE;
当我使用EXEC从服务器运行存储过程并打印时,PO_EXPIRETIME时间戳对于UTC格式是合适的。
但是,当我从OCCI和客户机调用存储过程时,收到的时间戳并不相同,