获取具有最多相关对象的对象

时间:2017-04-16 22:09:54

标签: sql django postgresql django-models django-orm

是否可以获得具有最多相关对象的对象?

我想选择最常用的计划,这是一个具有最大UserPlan个对象数的计划。

我可以得到号码而不是实例。

number_of_users = Plan.objects.aggregate(max_users=Max('userplan'))['max_users']

代码:

class UserPlan(Model):
   plan = ForeignKey('Plan'..)

class Plan(Model):
   ...

    @staticmethod
    def favorite(self):
        number_of_users = Plan.objects.aggregate(max_users=Max('userplan'))['max_users']
        # ?

我可以使用循环找到它,但它可能很慢。

1 个答案:

答案 0 :(得分:0)

由于信息已存储在一列中,我们如何对其进行排序?

obj_most_popular = Plan.objects.order_by(' userplan')。first()

您可以在此处的文档中详细了解它:https://docs.djangoproject.com/en/1.10/ref/models/querysets/#order-by

相关问题