【发布时间】:2021-11-25 05:19:53
【问题描述】:
我有一个带有 PostgreSQL DateRange 字段的模型:
class MyModel(models.Model):
date_range = DateRangeField()
如果我想查询这个以查看另一个日期是否重叠,这很容易:
MyModel.objects.filter(date_range__overlap=other_date)
但是,如果我已经建立了一个 DateRange 对象列表,我如何搜索该列表并询问与列表相同的内容(而不是查询集)。 IE。 “此 DateRange 是否与此列表中的任何 DateRanges 重叠?”:
mylist = [DateRange([2021-10-04, 2021-10-05]), DateRange([2022-10-04, 2022-10-05])]
for dr in mylist:
dr.overlap(query_date) # fails
注意:DateRange 对象没有属性 overlap 每 docs。
【问题讨论】:
-
查询集是否应该包含与
DateRanges中的任何 个或DateRanges 中的所有 个重叠的MyModel对象。 -
@WillemVanOnsem 任何日期范围
标签: django postgresql psycopg2