如何在Django中按父模型的ForeignKey订购

时间:2019-01-22 11:14:07

标签: django django-models

您好,我有2个型号:

模型用户

class User(models.Model):
    name = models.CharField(max_length=20, null=True, blank=True)
    location = models.ForeignKey(Location, null=True, blank=True, related_name='checkin', on_delete=models.SET_NULL)

模型位置

class Location(models.Model):
    name = models.CharField(max_length=100)

如何通过用户模型的签入次数订购位置

我尝试过但未成功:

Location.objects.annotate(checkin_count=Count('user')).order_by('-checkin_count')

1 个答案:

答案 0 :(得分:2)

您有一个related_name,应该在注释调用中使用它。

Location.objects.annotate(checkin_count=Count('checkin')).order_by('-checkin_count')