]> git.ipfire.org Git - thirdparty/patchwork.git/commitdiff
admin: Further optimize queries
authorStephen Finucane <stephen@that.guru>
Fri, 2 Nov 2018 17:45:20 +0000 (17:45 +0000)
committerStephen Finucane <stephen@that.guru>
Tue, 25 Dec 2018 20:11:22 +0000 (20:11 +0000)
To count the amount of received patches for a series, we only need the
patch's series field.

Signed-off-by: Stephen Finucane <stephen@that.guru>
patchwork/admin.py

index 546e516dadf990f4ecfca607649a2f74455b06b7..f9a94c6f5c07b024570eeb39c18e5bfbf158ed40 100644 (file)
@@ -6,6 +6,7 @@
 from django.contrib import admin
 from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
 from django.contrib.auth.models import User
+from django.db.models import Prefetch
 
 from patchwork.models import Bundle
 from patchwork.models import Check
@@ -134,7 +135,8 @@ class SeriesAdmin(admin.ModelAdmin):
 
     def get_queryset(self, request):
         qs = super(SeriesAdmin, self).get_queryset(request)
-        return qs.prefetch_related('patches',)
+        return qs.prefetch_related(Prefetch(
+            'patches', Patch.objects.only('series',)))
 
 
 admin.site.register(Series, SeriesAdmin)