Несколько глубинном уровне помощью методов hasmany отношения в фреймворк Laravel красноречивый
У меня есть пользовательская модель, которая будет добавлять клиентов, которые будут иметь постоянный адрес (Идентификатор в таблице клиентов для ссылки на их адреса), который будет иметь подразделения, которые будут иметь районы и, наконец, которые будут иметь много Субрайонов.
Таблицы, как так с hasMany и принадлежат отношениям-
- Users
- Clients
- PermanentAddresses (keeping the IDs of the subsequent child areas and client_id)
- Divisions
- Districts
- Subdistricts
Как я могу получить всех клиентов из конкретных районов, которые будут принадлежать к районам и так далее вплоть до клиентов.
Все эти уровни управляют красноречивыми / объединенными запросами орехов. Некоторые подсказки будут высоко оценены. Это HasMany глубокие отношения имеет то же самое, но нет ответа, чтобы достичь этого без использования пакета. Хотя ситуация аналогичная.


Ответы - Несколько глубинном уровне помощью методов hasmany отношения в фреймворк Laravel красноречивый / Multiple level deep hasMany relationships in Laravel Eloquent

16.11.2019 03:45:47
Это ясный случай того, что вы видите https://laravel.com/docs/5.8/eloquent-relationships#querying-relationship-existence
Clients::whereHas('PermanentAddresses.Divisions.Districts.Subdistricts', function ($q) use ($subDistrictID) {
$q->whereId($subDistrictID);
})->get();
Измените 'PermanentAddresses.Divisions.Districts.Subdistricts'
это к согласно вашим отношениям.
Здесь $subDistrictID
-это идентификатор вашей таблицы субрайонов, если вы думаете, что это может быть не идентификатор, или ваш запрос будет чем-то другим, а затем изменится в соответствии с этим.
Я не проверял, но это должно сработать.