我的代码:
class School(models.Model): pass
class Student(models.Model):
school = models.ForeignKey(School)
TYPE_CHOICES = (
('ug', 'Undergraduate'),
('gr', 'Graduate'),
('al', 'Alumnus'),
)
type = models.CharField(max_length=2)
如何获得按本科学生人数排序的学校查询集?
答案 0 :(得分:0)
from django.db.models import Count
School.objects.filter(student__type='ug').annotate(
num_students=Count('student')
).order_by('num_students')
有关aggregate
和filter
条款之间关系的documentation,请参阅。