diff --git a/shiftregister/team/views.py b/shiftregister/team/views.py index 5fe9667..4cfc679 100644 --- a/shiftregister/team/views.py +++ b/shiftregister/team/views.py @@ -29,13 +29,16 @@ def shift_overview(request): .order_by("start_at") ] - # probably can do some distinct/group by stuff but not sure how tih django queries - context["next_shifts"] = [ - Shift.objects.filter(room=room, start_at__gt=timezone.now(), deleted=False) - .order_by("start_at") - .first() - for room in Room.objects.all() - ] + # only Postgres supports DISTINCT on specific columns, SQLite does not support aggregates on datetime fields + context["next_shifts"] = filter( + lambda x: x is not None, + ( + Shift.objects.filter(room=room, start_at__gt=timezone.now(), deleted=False) + .order_by("start_at") + .first() + for room in Room.objects.all() + ), + ) return render(request, "shift_overview.html", context)