Как запросить отношение Laravel Eloquent к отношениям? - PullRequest
0 голосов
/ 11 сентября 2018

Я изучаю красноречивые отношения Ларавела, на разных примерах.У меня есть модель штата и модель города, где City принадлежит To Штат и штат hasMany City.

Согласно заданному коду на https://laravel.com/docs/5.7/eloquent-relationships#eager-loading, Я успешно запросил штаты, в которых есть города, название которых начинается с 'p'.Но я не могу найти все те города, названия штатов которых начинаются с 'l'.

Это может быть очень простой вопрос, но тем не менее, я ищу помощи в том, что не получается и почему.

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Вы можете использовать whereHas, чтобы применить фильтр к связанным моделям, таким как

$states= City::whereHas('state', function ($query) {
    $query->where('name', 'like', 'i%');
})->get();

Запрос наличия отношений

0 голосов
/ 11 сентября 2018

Попробуйте это:

State::where('name','like','l%')->get();

Для запроса отношения:

$states= City::whereHas('state', function ($query) {
   $query->where('name', 'like', 'l%');
})->get();
...