У меня есть 2 модели, например, Country
и City
с отношениями one-to-many
.
Когда я запускаю этот код
$countries = Country::query()->with('cities')->get();
foreach ($countries as $country) {
$cities = $country->cities;
foreach ($cities as $city) {
dump($city->country);
}
}
, при каждом вызове $city->country
у меня есть запрос к БД
select * from `countries` where `countries`.`id` = ? limit 1
Если отношение (в моем случае cities.country
) не было загружено с энергичной загрузкой, есть ли возможность предотвратить выполнение запроса к БД при каждом вызове $city->county
?
Мне не нужна переменная $country
. Мне нужно получить null
, если отношение cities.country
не было загружено в основном запросе.