Django querySet упорядочить по дате, ближайшей к сегодняшнему дню

У меня есть простое представление, которое возвращает даты событий и затем представляется в таблице на моей странице.

Мне нужно упорядочить данные по дате, ближайшей к текущей дате, только для дат в будущем, а не для прошедших дат.

Это мое мнение

def dashboard_view(request):
    now = datetime.datetime.now().date
    game_list=Game.objects.all()
    event_list = Event.objects.all().order_by('event_date')
    
    return render(request,"dashboard.html",{"game_list":game_list, "event_list": event_list})

Я думал использовать datetime.datetime.now(), но не могу понять логику/синтаксис для этого.

Спасибо

Вы можете отфильтровать Event с помощью Event.objects.filter(event_date__gte=today), чтобы получить только Event, которые начинаются сегодня или в будущем:

from django.utils.timezone import now

def dashboard_view(request):
    today = now().date()
    game_list=Game.objects.all()
    event_list = Event.objects.filter(event_date__gte=today).order_by('event_date')
    
    return render(request, 'dashboard.html', {'game_list':game_list, 'event_list': event_list})
Вернуться на верх