2017-07-19 85 views
0

我需要在我的管理员中显示我的模型的get_followers和get_following的计数。如何获得django模型属性的记录数

我的模型被称为应用程序,每个应用程序都有一些关注者和关注者。我需要显示追随者和追随者的人数。我试图在一个单独的函数中使用.count函数,但我错过了一些东西。

这是我现在有:

class Application(TimeStampModel): 
    name = models.CharField(verbose_name='CI Name', max_length=100, unique=True) 
    relationships = models.ManyToManyField('self', through='Relationship', 
              symmetrical=False, 
              related_name='related_to') 

    def get_following(self): 

     return ", ".join(str(x) for x in self.get_relationships(RELATIONSHIP_FOLLOWING)) 

获得 “get_following”

def get_following_count(self): 

     return ", ".join(str(x) for x in self.get_relationships(RELATIONSHIP_FOLLOWING).count()) 

的计数,但上面不工作。

def get_followers(self): 
     return ",".join(str(x) for x in self.get_related_to(RELATIONSHIP_FOLLOWING)) 
    def get_friends(self): 
     return self.relationships.filter(
      to_apps__status=RELATIONSHIP_FOLLOWING, 
      to_apps__from_application=self, 
      from_apps__status=RELATIONSHIP_FOLLOWING, 
      from_apps__to_application=self) 

    def get_friends_display(self): 
     return ", ".join(str(x) for x in self.get_friends()) 

回答

0

这是我所做的。

def get_following_count(self): 
    count_get_following = self.get_relationships(RELATIONSHIP_FOLLOWING).count() 
    return count_get_following