python - Django 如何正确比较 django.utils.timezone.localtime 和 PostgreSQL 时间与时区?
问题描述
我有一个带有time with time zone
列的旧 PostgreSQL 表。
在models.py中,我将文件设置为models.TimeField
我想比较Django.utils.timezone.localtime()
访问db_field_time_with_time_zone
我在下面尝试过:
# let's say now=20:00 and db_field_time_with_time_zone=16:00
now = timezone.localtime()
data = timezone.datetime.combine(timezone.localdate(), db_field_time_with_time_zone)
self.assertTrue(now > data) # I get False...
在原始 PostgreSQL 列中,它存储为16:00:00+09:00
但是当我使用它检索数据python manage.py shell
时返回16:00:00+00:00
,我也认为这是导致此问题的原因。
在我的 settings.py
TIME_ZONE = 'Asia/Tokyo'
USE_TZ = True
解决方案
推荐阅读
- sql - 多次进出计算sql-server
- c++ - 模板和 ODR
- python - 如何加快数百万对象的python实例初始化?
- python - Tensorflow ValueError:没有要优化的变量
- c# - 参数化查询在 C# 中与 MySQL 一起使用吗?
- loops - 在 SWI-Prolog 中打破基于 /3 的“循环”,同时保持跟随它的选择点
- direct2d - D2D1在高DPI下有明显的锯齿
- android - 在锁定屏幕上发生 [正在停止已停止的活动:{package.LockScreenActivity}]
- python - 如何通过python从url中的远程pdf文件中提取简体中文?我的代码的输出结果是空的
- java - Java Map的迭代-显示数组元素时出错