У меня есть 4 таблицы
Таблица-A, Таблица-B, Таблица-C, Таблица-D
Таблица-B, Таблица-C, Таблица-D - главная таблица, а в таблице-A у меня есть reference_id других таблиц.
Структура таблицы-A
Id reference_id content_data reference_type
1 1 Test Content related to Table-B Table-B
2 1 Test Content related to Table-C Table-C
3 1 Test Content related to Table-D Table-D
Структура таблицы-B
Id content_data
1 information of B
Структура таблицы C
Id content_data
1 information of C
Структура таблицы D
Id content_data
1 information of D
У меня естьэтот тип запроса и отношения, которые будут возвращать содержимое таблицы A с отношением других таблиц,
Table-A::select('*')
->where('id', $id)
->with('Table-B', 'Table-C', 'Table-D')
->first();
Но здесь у меня возникает проблема, когда я выбираю данные, все отношения имеют результат как всеТаблица содержит id=1
, так как управлять этими записями, чтобы получить значения отношений, у которых поле reference_type
соответствует Table-A
?