这是我想要实现的目标:
我有一个具有FormationSession模型的编队模型。 我需要所有编队,每个编队都有数据库中的最后一个会话。
这是我到目前为止所得到的:
$formations = Formation::query()
->with('location')
->with('jobs')
->with('employee')
->with('intervenant.company')
->with(['formation_sessions' => function($query) {
$query->limit(1)->orderBy('start_at', 'desc');
}])
->whereNotNull('update_frequency')
->get();
我很困惑,我怎么能实现这个目标?
答案 0 :(得分:1)
您可以创建类似
的其他关系public function formation_sessions_last(){
return $this->belongsToMany('App\FormationSession','formation_id')
->orderBy('start_at')->limit(1);
}
#App\FormationSession => FormationSession Modal
#formation_id => foreign_key
然后你可以调用查询
->with('formation_sessions_last')
希望这会有所帮助。