2014-10-27 109 views
0

場景 警報可以有很多標準,許多標準可以有我的警報。Laravel - 給定標準的數據透視表結果總和

用戶被分配到一個標準。當用戶查看他們的所有criteria時,我希望它顯示有多少匹配警報(存儲在數據透視表中)的總和。的關係,採用結構化的數據透視表:

Screenshot

因此,例如,我可以訪問警報和標準數據,也應該告訴我,爲criteria_id = 73,有一個警報比賽​​。

所以Eloquent公式是目前:

public function criterias() 
    { 
     return $this->belongsToMany('Criteria')->withTimestamps(); 
    } 

標準模型中的關係模型警報內

public function getIndex() 
    { 
     $alerts = Criteria::with('coordinate', 'alerts') 
     ->where('user_id', '=', Auth::user()->id) 
     ->get(); 

     $this->layout->content = View::make('users.alert.index', 
      array('alerts' => $alerts)); 
    } 

關係

public function alerts() 
{ 
    return $this->belongsToMany('Alert')->withTimestamps(); 
} 

如果您需要更多信息,請告訴我。非常感謝您的幫助。

+0

你要計算該條件的所有警報或只是唯一的警報? – user3158900 2014-10-27 20:38:38

+0

可能有多個與該用戶相關的條件。因此,如果有意義的話,它需要「計算與屬於該用戶的每個標準相關的所有警報」。 – Ben 2014-10-27 20:51:52

+1

http://stackoverflow.com/questions/25973095/getting-count-from-pivot-table-in-laravel-eloquent#25973237 – 2014-10-28 19:47:51

回答