21

我需要选择日期字段大于今天日期或日期字段为空的所有模型对象。

我有以下代码:

@login_required
def event_new(request, person_uuid=None):
    today = datetime.datetime.today()
    #valid_until may be empty
    profile = Profile.objects.filter(company=request.user.company, valid_until__gte=today)

我需要选择 valid_until 字段为空或(如果设置)大于今天的所有 Profile 对象。我怎样才能做到这一点?

4

1 回答 1

31

使用Q

from django.db.models import Q

@login_required
def event_new(request, person_uuid=None):
    today = datetime.datetime.today()
    #valid_until may be empty
    profile = Profile.objects.filter(company=request.user.company).filter(Q(valid_until__gte=today)|Q(valid_until=None))
于 2013-07-10T10:18:43.677 回答