我有这个问题:
$tournament = Tournament::with(
'championships',
'championships.settings',
'championships.category',
'championships.tree.users',
)->first();
Run Code Online (Sandbox Code Playgroud)
现在,它给了我所有附加锦标赛的锦标赛.
我需要的是参加锦标赛,但只有我所拥有的$ request-> ChampionshipId锦标赛.
当然,我也想在所有其他关系中使用这个过滤器('championships.settings','championships.category','championships.tree.users')任何想法?
Sau*_*ogi 15
你可以Constraining Eager Loading像这样使用:
$tournaments = Tournament::with(['championships' => function ($query) {
$query->where('something', 'like', '%this%');
},
'championships.settings' => function ($query) {
$query->where('something', 'like', '%this%');
},
...])->get();
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
加载子查询约束中的关系:
$tournament = Tournament::with(['championships' => function($query) use ($request) {
return $query->where('id', $request->championshipId)
->with([
'settings',
'category',
'tree.users'
]);
}])->first();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4988 次 |
| 最近记录: |