Laravel 4有很多关系

时间:2014-05-06 11:35:46

标签: laravel-4

我想计算contributions行是pools的引用(池有很多贡献)

  $pool->with(array('contributions' => function($q) use($pool){
                $q->where('status', '=', 'completed');
            }))->count();

但我无法得到正确的结果。

2 个答案:

答案 0 :(得分:0)

您的贡献模型可能包含:

class Contribution extends Eloquent {

   public function pool() {
      return $this->belongsTo('Pool');
   }

}

您的泳池模型应具有:

class Pool extends Eloquent {

   public function contributions() {
      return $this->hasMany('Contribution');
   }

查询

$pool->contributions()->where('status', '=', 'completed')->count();

答案 1 :(得分:0)

这个怎么样?

$pool->whereHas('contributions', function($q){
    $q->where('status', '=', 'completed');
}))->count();