У меня есть две таблицы с названиями «районы» и «деление» следующим образом:

division таблица

enter image description here

districts таблица

enter image description here

Модель деления hasMany districts

Теперь я хочу получить все деление с округами, кроме некоторых районов. Я пытаюсь сделать следующее:

$divisionWithDistricts = Division::with('districts')->whereNotIn('districts.id',$districtsAlreadyUsed)->get();

Здесь districtsAlreadyUsed - это массив идентификаторов районов. У меня ошибка Unknown column 'districts.id'. Было бы так просто, если бы District_id присутствовал в таблице division. Как я могу получить такие данные в такой ситуации?

0
Abdus Sattar Bhuiyan 5 Дек 2020 в 18:47

1 ответ

Лучший ответ

Попробуй это

$divisionWithDistricts = Division::with(['districts' => function($query) use($districtsAlreadyUsed) {
    $query->whereNotIn('id', $districtsAlreadyUsed);
}])
->get();
1
Donkarnash 5 Дек 2020 в 16:04