From 3aca4b88c878a2111f5446705cb3112ec99bffa3 Mon Sep 17 00:00:00 2001 From: Dominik George <nik@naturalnet.de> Date: Mon, 25 Nov 2019 00:17:53 +0100 Subject: [PATCH] Fix regression in preloading. --- biscuit/apps/alsijil/views.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/biscuit/apps/alsijil/views.py b/biscuit/apps/alsijil/views.py index 44c9ed95a..a70a43aae 100644 --- a/biscuit/apps/alsijil/views.py +++ b/biscuit/apps/alsijil/views.py @@ -97,7 +97,13 @@ def week_view(request: HttpRequest, year: Optional[int] = None, week: Optional[i lesson_period=OuterRef('pk'), week=wanted_week.week )) - ).in_week(wanted_week) + ).in_week( + wanted_week + ).select_related( + 'lesson', 'lesson__subject', 'period', 'room' + ).prefetch_related( + 'lesson__groups', 'lesson__teachers', 'substitutions' + ) group = None # FIXME workaround for #38 if request.GET.get('group', None) or request.GET.get('teacher', None) or request.GET.get('room', None): @@ -172,8 +178,10 @@ def full_register_group(request: HttpRequest, id_: int) -> HttpResponse: # Get all lesson periods for the selected group lesson_periods = LessonPeriod.objects.filter_group( group - ).distinct().prefetch_related( - 'documentations', 'personal_notes' + ).distinct().select_related( + 'lesson', 'lesson__subject', 'period', 'room' + ).prefetch_related( + 'lesson__groups', 'lesson__teachers', 'substitutions', 'documentations', 'personal_notes' ) weeks = CalendarWeek.weeks_within(group.school.current_term.date_start, group.school.current_term.date_end) -- GitLab