У меня есть эта модель:
from reviews.models import *
from django.db.models import Count
class Review(models.Model):
user = models.ForeignKey('core.User')
status = models.CharField(default='5 star', max_length=100)
reviewed_date = models.DateField(default=datetime.date.today, blank=True, null=True)
reviewer = models.ForeignKey('core.User', related_name='reviewer', null=True)
Я могу перечислить лучшие 5 Review.user's с большинством отзывов, как это:
for u in User.objects.annotate(num_reviews=Count('review')).order_by('-num_reviews')[:5]:
... print u.login, u.num_reviews, u.title
...
bobby 395 Manager
paul 377 Project Manager
micheal 283 Program Manager
kim 252 Engineer
goober 210 Engineer
Но как я могу перечислить лучшие 5 Review.reviewers