2017-02-02 47 views
2

我有一個與自己1:N關係(單個用戶可以引用多個用戶,並且一個用戶只能由單個用戶引用)的雄辯模型用戶。Laravel中的關係計數量

/* 
* Get the user's referrals 
*/ 

public function referrals() 
{ 
    return $this->belongsToMany('App\User'); 
} 

/* 
* Get the referred user's parent referral 
*/ 

public function parentReferral() 
{ 
    return $this->belongsTo('App\User'); 
} 

Laravel是否提供了一個本地方法來計算所有belongsToMany關係?

(一個簡單的方法可以讓我做,這是剛剛獲得母公司用戶的ID和手工清點全部出場,但我想知道是否有通過Laravel給出的方法,我可以在對象上使用)

回答

2

使用withCount()方法從一個關係算結果的數量:

如果你要計算從一個關係結果的數量,而無需實際加載它們,你可以使用withCount方法,這將放置{關係} _count專欄您的最終型號

User::withCount('referrals')->get(); 
+1

非常感謝,搜索自己,但由於某種原因無法在文檔中找到它:) – kjanko

+0

很高興幫助) –