And that works, with one exception: .get_object_for_this_type(pk=object['object_id'])
Getting the objects IS a bit inefficient, but since I only need the top 10, I can live with it. On May 27, 12:32 pm, Jason Culverhouse <ja...@mischievous.org> wrote: > If you were to do something like this: > > from django.models import count > most = Watch.objects.values('content_type', > 'object_id').annotate(Count('object_id')).order_by('-object_id__count') > > [ > {'object_id__count': 15, 'object_id': 1, 'content_type': 10}, > {'object_id__count': 2, 'object_id': 1, 'content_type': 5}, > ... > ] > > # this isn't efficient, but you get the idea > # you need to resolve the content types and object id's into models > from django.contrib.contenttypes.models import ContentType > for object in most: > foo = ContentType.objects.get(id= > object['content_type']).get_object_for_this_type(object['object_id']) > > You can also seehttps://github.com/coleifer/django-generic-aggregation > > This will get you close but I think it only if you want to annotate the count > on a single content type at once. > > Jason Culverhousehttp://www.mischievous.org -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.