From 03ca65602fd2e41a6556473820fa493c774e97c6 Mon Sep 17 00:00:00 2001 From: David Taylor Date: Tue, 5 Apr 2016 12:08:19 +0100 Subject: [PATCH] Allow sorting by number of events --- RIGS/admin.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/RIGS/admin.py b/RIGS/admin.py index d8583e23..9bfcb3eb 100644 --- a/RIGS/admin.py +++ b/RIGS/admin.py @@ -9,6 +9,7 @@ from django.template.response import TemplateResponse from django.contrib import messages from django.db import transaction from django.core.exceptions import ObjectDoesNotExist +from django.db.models import Count # Register your models here. admin.site.register(models.VatRate, reversion.VersionAdmin) @@ -44,9 +45,14 @@ class AssociateAdmin(reversion.VersionAdmin): actions = ['merge'] + def get_queryset(self, request): + return super(AssociateAdmin, self).get_queryset(request).annotate(event_count = Count('event')) + def number_of_events(self,obj): return obj.latest_events.count() + number_of_events.admin_order_field = 'event_count' + def merge(self, request, queryset): if request.POST.get('post'): # Has the user confirmed which is the master record? try: