Django 查询集:如果 datetime.now() 大于字段 - 24 小时,则过滤 DateTimeField

Django queryset: filter DateTimeField if datetime.now() is greater than field - 24 hours

我不明白该怎么做。

我有一个带有 start_datetime 字段的事件模型。我想 select 所有 datetime.now() >= start_datetime - 24 小时的事件。
我尝试使用 filter() 但我不明白如何判断 'start_datetime - 24h'.
你能帮帮我吗?

如果你重新排列

datetime.now() >= start_datetime - 24 hours

你得到

start_datetime <= datetime.now() + 1 day

所以你的查询集应该是:

from datetime import timedelta

Event.objects.filter(start_datetime__lte=datetime.now() + timedelta(days=1))