我想计算每个中心用户他们注册的学生人数。我有两张不同的桌子,center和student在第一个表中Center,我有 center_id列。在该表中,我有 center_id,例如“PP_123”。在第二个表中student,我创建了center_code列。在该表中,我将 center_code 保存为“PP_123”。如果中心用户注册学生时,第二个表student文件与学生数据一起存储center_code在student表中。中心表数据 ALL CENTERS LIST scenter_name Date of join center_code HALO COMPUTERS 02-12-2019 PP_123 scenter_name Date of join center_code SKILL EDUCATION CENTER 02-12-2019 PP_123学生表数据 ALL REGISTERED STUDENT LISTstudent_name student_f_name student_m_name center_code abc abc abc PP_123student_name student_f_name student_m_name center_code xyz xyz xyz PP_123student_name student_f_name student_m_name center_code vvv vvv vvv PP_124视图应显示如下结果CENTER CODE DATE OF JOIN CENTER NAME APPLICATION COUNT PP_123 02-12-2019 HALO COMPUTERS 2 PP_124 10-12-2019 SKILL EDUCATION CENTER 1控制器[此代码仅显示所有中心名称和 id]public function center_activities(){ $activities_list = return view('Center.cernter_activites',compact('activities_list'));}
1 回答
![?](http://img1.sycdn.imooc.com/533e4d00000171e602000200-100-100.jpg)
繁华开满天机
TA贡献1816条经验 获得超4个赞
假设您想统计您正在搜索的中心的所有学生,您应该能够使用withCount来统计每个中心的相关记录。尝试如下设置:
中心型号:
public function students()
{
return $this->hasMany(Student::class, 'center_code', 'center_code');
}
控制器:
$centers = Center::where('center_delete', 'NOT-DELETED')
->where('account_type', 'OLD_ACCOUNT')
->withCount('students')
->get();
看法:
@foreach ($centers as $center)
...
<td>{{ $center->students_count }}</td>
...
@endforeach
Laravel 5.7 Docs - Eloquent - 关系 - 计数相关记录 withCount
- 1 回答
- 0 关注
- 98 浏览
添加回答
举报
0/150
提交
取消