我如何在 Django 的 table 中获得出现次数最多的用户

how do i get the highiest occured user in a table in Django

我需要帮助, 我正在构建一个允许用户发送邀请的应用程序,我想获得发出邀请最多的用户,我该怎么做。我的模型如下。

class Invite(models.Model):
    host_name = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL)
    invite = models.CharField(max_length=200, null=True,blank=True)
    def __str__(self):
        return self.name```

    

您需要做的就是导入计数。计算 Invite() 对象的 host_name 个。然后通过从反向

订购得到唯一的host_name

玩得开心!

from django.db import Count

Invite.objects.annotate(num_likes=Count('host_name')).filter(host_name__gt=).order_by('-host_name')[:0]

这是对我有用的 Enes 解决方案的修改

 user_with_highest_sent_out_invite = User.objects.annotate(num_of_invites=Count('invite__host_name')).order_by('-num_of_invites')[0]

但是当出现平局时,它会获取上面指定的第一个对象