Laravel 项目的 hasMany 关系第一条记录中的按日期排序
Sort By date in hasMany relation first record for Laravel project
我有一个 courses
table 而且每个课程都有很多 sessions
,
所以我需要按 Laravel 项目课程日期的第一节课对课程进行排序。
这样你就可以在课程模型中设置一个方法来获取最旧的会话模型(即第一个会话):
public function oldestSession()
{
return $this->hasOne(Session::class)->oldestOfMany();
}
然后您可以通过在该方法上添加约束来简单地查询您的课程模型:
$courses = Course::with(['oldestSession' => function ($query) {
$query->orderBy('created_at', 'desc');
}])->get();
我有一个 courses
table 而且每个课程都有很多 sessions
,
所以我需要按 Laravel 项目课程日期的第一节课对课程进行排序。
这样你就可以在课程模型中设置一个方法来获取最旧的会话模型(即第一个会话):
public function oldestSession()
{
return $this->hasOne(Session::class)->oldestOfMany();
}
然后您可以通过在该方法上添加约束来简单地查询您的课程模型:
$courses = Course::with(['oldestSession' => function ($query) {
$query->orderBy('created_at', 'desc');
}])->get();