我想过滤今天启用的记录:
today = datetime.today().date()
dataset = Structure.objects.exclude(final_date__lt=today).filter(initial_date__lte=today)
以上代码在初始和最后一天都可以正常工作。
考虑到final_date可以为null,我如何构造过滤器?
或者这个查询有更好的构造吗?
答案 0 :(得分:2)
如果我理解这一点,您希望过滤final_date
值和null。是吗?
您可以使用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)