【问题标题】:Get objects with date greater than today or empty date获取日期大于今天或空日期的对象
【发布时间】:2013-07-08 05:30:32
【问题描述】:

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

我有以下代码:

@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 对象。我怎样才能做到这一点?

【问题讨论】:

    标签: python django django-models


    【解决方案1】:

    使用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))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-11
      • 2015-08-03
      • 1970-01-01
      • 1970-01-01
      • 2016-02-20
      • 1970-01-01
      • 1970-01-01
      • 2015-12-15
      相关资源
      最近更新 更多