当我创建一个CRUD控制器时,这是默认情况下创建的显示路线:/** * Display the specified resource. * * @param \App\Team $team * @return \Illuminate\Http\Response */public function show(Team $team){ //}$team是此处的对象,是的实例Team。如果执行此操作,则将正确的对象传递给刀片:public function show(Team $team){ return view('admin.teams.show', ['team' => $team]);}但是,Team与另一个名为的模型具有多对多关系Player,并且这种关系从Team侧面定义为:public function players() { return $this->belongsToMany(Player::class);}在我的show方法中,我想将$ team及其相关的玩家退还给我们。但是由于$ team已经是一个对象,而不是查询生成器,所以现在做这样的事情为时已晚$team->with('players')那么,如何在这里找到相关玩家呢?我知道我可以做类似的事情:public function show(Team $team){ $team_extended = Team::where('id', $team['id'])->with('players')->first(); return view('admin.teams.show', ['team' => $team_extended]);}但是感觉就像在破解默认情况下应该存在的功能。是否有内置的Laravel方法可以做到这一点?还是我只是在发明热水,并且应该采用我在上面的解决方案中使用的方法?
1 回答
- 1 回答
- 0 关注
- 139 浏览
添加回答
举报
0/150
提交
取消