Laravel 仪表板查询今年在校学生?
Laravel Dashboard Query on Enrolled students this Year?
比如我有五个表(School, Student, Class, Session, Enrollment) Enrollment Table 存储了其他表的Primary Key, 现在我喜欢明智地计算 Session 有多少学生在 Session 2019-2020 注册并显示在仪表板中。
public function index()
{
$schools=School::all();
$students=Student::all();
$sessions=Session::all();
$enrollements=Enrollement::all();
return view('dashboard',compact('schools','students','enrollements','sessions'));
}
- 当我写 {{$sessions->latest()}} 时,它显示以下错误“”“方法 Illuminate\Database\Eloquent\Collection::latest 不存在””
- 以及如何通过session年(String)来计算入学人数?
谁能建议解决以下问题的最佳方法?
对于集合,使用last()
方法($sessions->last()
)https://laravel.com/docs/7.x/collections#method-last
我不知道你的table是怎么构造的,但是你需要按年份分组然后比较
$enrollementsByYear = Enrollment::selectRaw('year, count(year) AS enrollmentsByYear')
->groupBy('year')
->get();
然后在 $enrollementsByYear
中您将拥有一个集合,您可以在其中比较会话的年份并安装您的 table。将 year
更改为实际的列名。
您可以轻松地与以下内容进行比较:
@foreach ($sessions as $session)
@foreach ($enrollementsByYear as $y)
@if ($session->year == $y->year)
<label>{{ $session->year }}</label>: <span> {{$y->enrollmentsByYear }}</span>
@endif
@endforeach
@endforeach
比如我有五个表(School, Student, Class, Session, Enrollment) Enrollment Table 存储了其他表的Primary Key, 现在我喜欢明智地计算 Session 有多少学生在 Session 2019-2020 注册并显示在仪表板中。
public function index()
{
$schools=School::all();
$students=Student::all();
$sessions=Session::all();
$enrollements=Enrollement::all();
return view('dashboard',compact('schools','students','enrollements','sessions'));
}
- 当我写 {{$sessions->latest()}} 时,它显示以下错误“”“方法 Illuminate\Database\Eloquent\Collection::latest 不存在””
- 以及如何通过session年(String)来计算入学人数?
谁能建议解决以下问题的最佳方法?
对于集合,使用
last()
方法($sessions->last()
)https://laravel.com/docs/7.x/collections#method-last我不知道你的table是怎么构造的,但是你需要按年份分组然后比较
$enrollementsByYear = Enrollment::selectRaw('year, count(year) AS enrollmentsByYear') ->groupBy('year') ->get();
然后在 $enrollementsByYear
中您将拥有一个集合,您可以在其中比较会话的年份并安装您的 table。将 year
更改为实际的列名。
您可以轻松地与以下内容进行比较:
@foreach ($sessions as $session)
@foreach ($enrollementsByYear as $y)
@if ($session->year == $y->year)
<label>{{ $session->year }}</label>: <span> {{$y->enrollmentsByYear }}</span>
@endif
@endforeach
@endforeach