У меня есть следующая модель:
class Service(models.Model):
ratings = models.ManyToManyField(User)
Теперь, если я хочу получить все услуги с рейтингами, отсортированными по убыванию, я сделал что-то:
services_list = Service.objects.filter(ratings__gt=0).distinct()
services_list = list(services_list)
services_list.sort(key=lambda service: service.ratings.all().count(), reverse=True)
Как вы можете видеть, это трехэтапный процесс, и я не прав в этом. Кто-нибудь знает лучший способ сделать это?