0

我想过滤今天启用的记录:

today = datetime.today().date()
dataset = Structure.objects.exclude(final_date__lt=today).filter(initial_date__lte=today)

上面的代码在初始和最后一天都被填满的情况下工作正常。

考虑到 final_date 可以为 null ,我该如何构造过滤器?

或者这个查询有更好的结构吗?

4

1 回答 1

2

如果我理解这一点,您想过滤final_date值和空值。是吗?

您可以使用 Q 对象进行过滤。

from django.db.models import Q

dataset = Structure.objects.filter(Q(final_date__lt=today) | Q(final_date__isnull=True)).filter(initial_date__lte=today)
于 2012-11-15T20:07:50.067 回答