【发布时间】:2017-10-01 10:01:33
【问题描述】:
如何通过一个查询实现这一目标:
upcoming_events = Event.objects.order_by('date').filter(date__gte=today)
try:
return upcoming_events[0]
except IndexError:
return Event.objects.all().order_by('-date')[0]
我的想法是做这样的事情:
Event.objects.filter(Q(date__gte=today) | Q(date is max date))[0]
但我不知道如何实现最大日期。也许我只是用Func 来做这件事。或django.db.expressions 中的When 或Case 可能会有所帮助。
【问题讨论】: