Skip to content
Snippets Groups Projects
Verified Commit 9b35463d authored by Nik | Klampfradler's avatar Nik | Klampfradler Committed by mirabilos
Browse files

Prefetch related lesson substitution data.

It’s still not used yet, due to filtering; this will appear in
a subsequent commit.
parent dac1eafe
No related branches found
No related tags found
No related merge requests found
...@@ -31,7 +31,13 @@ def timetable(request: HttpRequest, week: Optional[int] = None) -> HttpResponse: ...@@ -31,7 +31,13 @@ def timetable(request: HttpRequest, week: Optional[int] = None) -> HttpResponse:
lesson_periods = LessonPeriod.objects.filter( lesson_periods = LessonPeriod.objects.filter(
lesson__date_start__gte=week_days(wanted_week)[0], lesson__date_start__gte=week_days(wanted_week)[0],
lesson__date_end__lte=week_days(wanted_week)[-1] lesson__date_end__lte=week_days(wanted_week)[-1]
).select_related('period', 'lesson').extra(select={'_week': wanted_week}) ).select_related(
'period', 'lesson'
).prefetch_related(
'substitutions'
).extra(
select={'_week': wanted_week}
)
if request.GET.get('group', None) or request.GET.get('teacher', None) or request.GET.get('room', None): if request.GET.get('group', None) or request.GET.get('teacher', None) or request.GET.get('room', None):
# Incrementally filter lesson periods by GET parameters # Incrementally filter lesson periods by GET parameters
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment