Я хочу установить отношения "многие ко многим", используя модель laravel - PullRequest
2 голосов
/ 09 июля 2020

Я пытаюсь создать много-много отношений ч / б из трех таблиц. Я не знаю, как это сделать. Пожалуйста, подтвердите, что мои отношения верны или нет.

Таблица проекта

id | name

таблица пользователей

id | name

project_assign

id | user_id | project_id

Модель пользователя

public function project_assign()
{
    return $this->belongsToMany('App\Project_assign','project_assign','user_id','id');
}

project_assign Модель

public function user()
{
    return $this->belongsToMany('App\User','Project_assign','user_id','id');
}

Модель проекта

public function project_assign()
{
    return $this->belongsToMany('App\Project_assign','project_assign','project_id','id');
} 

1 Ответ

1 голос
/ 09 июля 2020

вам не нужно создавать отношения в модели project_assign. только Project и User будут иметь отношение,

Project Model

public function users(){
   return $this->belongsToMany('App\User','project_assign','project_id','user_id');
} 

User Model

public function projects(){
    return $this->belongsToMany('App\Project','project_assign','user_id','project_id');
}

In контроллер можно вот так

User::with('projects')->get();
Project::with('users')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...