2015-11-25 58 views
0

我有3個表:ProjectGroupUser獲取關於樞軸柱細節[Laravel 5]

和一個關係透視表:project_group與colmuns: id project_id group_id 和樞軸字段user_id

我知道如何參加所有團體和項目:

Project::find(1)->groups()->get(); 

groups()是項目模型中的belongsToMany函數。

問題是我不知道如何讓特定項目的所有用戶。我需要獲得該項目的項目和所有用戶名稱和ID,對此的任何解決方案?

在此先感謝

回答

1

您可以嘗試在你的Project.php模型加樞關係

public function users() { 
    return $this->hasMany(App\User::class, 'project_group'); 
} 

然而,這可能是誤導,因爲project_group應該是project表和之間的數據透視表group表。 user_id不屬於那裏。

創建一個名爲group_user的第二個數據透視表,其中group_id,user_id。然後你可以使用這個在您的Group.php型號:

public function users() { 
    return $this->hasMany(App\User::class, 'group_user'); 
} 

一個例子則是:

$project = Project::find(1); 
foreach($project->groups as $group) { 
    $users = $group->users; // Now you should have access to all the users for each group 
}