2017-07-19 28 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