所以我想得到一个员工($ id)在不同阶段的所有项目的计数。如下所示:
排队 - 3 进展中 - 7 推出 - 5
我有一个项目表,一个雇员表和一个employee_project表。
如何为特定员工获取项目的各个阶段?这不起作用,因为它列出了每个状态,旁边只有1个:
Bytes/sec
任何想法如何做到这一点?
答案 0 :(得分:1)
您可以在Employee模型中使用方法:
public function projectsByStage() {
return $this->belongsToMany('App\Project')->groupBy('stage');
}
这将按项目阶段分组员工的项目。
然后在您的刀片模板中
@foreach ($employee->projectsByStage as $stage => $projects)
<h3>{{ $stage }}</h3>
<h3>{{ count($projects) }}</h3>
@endforeach
修改强>
我认为你不需要另一种方法。你可以直接这样做:
@foreach ($employee->projects->groupBy('stage') as $stage => $projects)
<h3>{{ $stage }}</h3>
<h3>{{ count($projects) }}</h3>
@endforeach