Я застрял в двух сводных таблицах и не понимаю, как это сделать, поскольку мне нужно отобразить данные в таблице данных Laravel Yajara.
Сначала позвольте мне показать вам мою структуру таблицы.
---------------
Table: projects
---------------
Column Type
id int(10)
uid char(36)
project_name varchar(255)
created_by int(10)
updated_by int(10)
created_at timestamp NULL
updated_at timestamp NULL
deleted_at timestamp NULL
--------------------
Table: group_project
--------------------
Column Type
group_id int(10)
project_id int(10)
-------------
Table: groups
-------------
Column Type
id int(10)
uid char(36)
group_name varchar(255)
created_by int(10)
updated_by int(10)
created_at timestamp
updated_at timestamp
deleted_at timestamp
-----------------
Table: group_user
-----------------
Column Type
group_id int(10)
user_id int(10)
-------------
Table: users
-------------
Column Type
id int(10)
uid char(36)
name varchar(255)
first_name varchar(255)
last_name varchar(255)
email varchar(255)
phone varchar(255)
password varchar(255)
remember_token varchar(100)
created_at timestamp
updated_at timestamp
deleted_at timestamp
В приведенной выше структуре таблиц вы можете обнаружить, что у меня есть две таблицы (group_user, group_project), которые связаны от проекта к группе и от группы к пользователю, и я хочу получить такие записи.
Project 1
|
-- Group 1
|
-- User 1
-- User 2
-- Group 2
|
-- User 3
-- User 4
Project 2
|
-- Group 1
|
-- User 1
-- User 2
-- Group 3
|
-- User 5
-- User 6
Вот мой код:
# Project Controller
public function index()
{
$projectsObj = $this->project->with(['projectGroups'])->get();
}
# Project Model
public function projectGroups()
{
return $this->belongsToMany('App\Groups', 'group_project', 'project_id', 'group_id');
}
В листинге проекта я хочу объединить сводную таблицу и сделать запрос.