更好的嵌套查询方法
Better approach for nested query
我是 Laravel 的新手。
我有这个问题
$city = City::where('slug', $slug)->first();
$city->users = $city->users()->where('gender', 'male')->get();
所以我想知道对于这种情况有什么更好的方法。综上所述,我需要找到一个城市和属于该城市的所有用户,性别=男性。
我试过但没成功
$city = City::whereHas('users', function($q) {
$q->where('gender', '=', 'male');
})->where('slug', $slug)
->first();
我错过了什么?
我相信 Laravel 的 Eager Loading 可以做到这一点。
在您的城市模型中正确设置关系后 class 您可以
$city = City::where('slug', $slug)
->with(['users' => function ($query) {
$query->where('gender', 'male');
}])->first();
我是 Laravel 的新手。
我有这个问题
$city = City::where('slug', $slug)->first();
$city->users = $city->users()->where('gender', 'male')->get();
所以我想知道对于这种情况有什么更好的方法。综上所述,我需要找到一个城市和属于该城市的所有用户,性别=男性。
我试过但没成功
$city = City::whereHas('users', function($q) {
$q->where('gender', '=', 'male');
})->where('slug', $slug)
->first();
我错过了什么?
我相信 Laravel 的 Eager Loading 可以做到这一点。 在您的城市模型中正确设置关系后 class 您可以
$city = City::where('slug', $slug)
->with(['users' => function ($query) {
$query->where('gender', 'male');
}])->first();