From 460f6ea66de921967f58643ab0ec29ad873eadb5 Mon Sep 17 00:00:00 2001 From: Alfredos-Panagiotis Damkalis Date: Thu, 28 Nov 2019 16:46:40 +0200 Subject: [PATCH] Reduce SQL queries in user page Signed-off-by: Alfredos-Panagiotis Damkalis --- network/templates/users/user_detail.html | 4 ++-- network/users/views.py | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/network/templates/users/user_detail.html b/network/templates/users/user_detail.html index 44338fe..1e27b3f 100644 --- a/network/templates/users/user_detail.html +++ b/network/templates/users/user_detail.html @@ -42,7 +42,7 @@ Antennas - {% for station in stations.all %} + {% for station in stations %} @@ -145,7 +145,7 @@ Station - {% for observation in observations.all %} + {% for observation in observations %} diff --git a/network/users/views.py b/network/users/views.py index 9d9c833..c2a1546 100644 --- a/network/users/views.py +++ b/network/users/views.py @@ -37,7 +37,9 @@ class UserUpdateView(LoginRequiredMixin, UpdateView): def view_user(request, username): """View for user page.""" user = get_object_or_404(User, username=username) - observations = Observation.objects.filter(author=user)[0:10] + observations = Observation.objects.filter( + author=user + )[0:10].prefetch_related('satellite', 'ground_station') stations = Station.objects.filter(owner=user).annotate(total_obs=Count('observations')) token = ''