From 66071535d0edc369137f0355c469afbc895ba86b Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Thu, 10 Sep 2020 18:22:48 +0200 Subject: [PATCH] Filter prefetched personal notes --- aleksis/apps/alsijil/views.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py index a749c1045..474f91e9c 100644 --- a/aleksis/apps/alsijil/views.py +++ b/aleksis/apps/alsijil/views.py @@ -273,7 +273,16 @@ def week_view( persons_qs = ( persons_qs.distinct() - .prefetch_related("personal_notes") + .prefetch_related( + Prefetch( + "personal_notes", + queryset=PersonalNote.objects.filter( + week=wanted_week.week, + year=wanted_week.year, + lesson_period__in=lesson_periods_pk, + ), + ) + ) .annotate( absences_count=Count( "personal_notes", @@ -329,16 +338,7 @@ def week_view( persons = [] for person in persons_qs: persons.append( - { - "person": person, - "personal_notes": list( - person.personal_notes.filter( - week=wanted_week.week, - year=wanted_week.year, - lesson_period__in=lesson_periods_pk, - ) - ), - } + {"person": person, "personal_notes": list(person.personal_notes.all())} ) else: persons = None -- GitLab