django - django __date 过滤器中的奇怪行为
问题描述
我正在尝试按日期过滤模型。
class Participant(models.Model):
email = models.CharField(unique=True, max_length=255)
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.email
有 4 个条目创建于date(2020, 3, 28)
:
2020-03-28 06:28:14.475307+00:00
2020-03-28 06:16:05.312023+00:00
2020-03-28 06:11:27.322146+00:00
2020-03-28 06:03:27.500164+00:00
当我这样做时:
Participant.objects.filter(created_at__gte=datetime.date(2020, 3, 28), created_at__lt=datetime.date(2020, 3, 29))
我收到了这 4 个条目。
但是,当我这样做时:
Participant.objects.filter(created_at__date=datetime.date(2020, 3, 28))
我得到一个空的查询集。
我有:
TIME_ZONE = "UTC"
USE_TZ = True
我在时区Asia/Kolkata
我正在使用 django 2.2 版、Mysql、python 3.6.7 版
我已经看到了这个答案:https ://stackoverflow.com/a/55608903/5157204但我无法弄清楚问题所在。谁能帮我找出问题所在?
解决方案
推荐阅读
- azure - Azure 混合连接管理器卡在“正在保存,请稍候”
- regex - 正则表达式:Excel Visual Basic 应用程序 (VBA) 函数(marco、模块)中两个字符串之间的匹配字符串。(正则表达式)
- python - 如何使用 Python “粘贴”解析后的 HTML
- ios - 在全球范围内检测 iOS 中的导航变化
- arm - ARM mrrc 指令
- javascript - nodejs express 为什么不返回res?
- r - 使用 chorn 将 chr 转换为时间格式
- mysql - Mysql外键是否作为索引
- c# - 如何使用 NPOI 创建目录?
- php - 保留另一个数组中的键 array_splice