2017-10-20 4 views
0

중간 테이블의 끝에서 두 테이블 중 하나를 가져 오는 방법은 무엇입니까?laravel 피벗을 통해 사지 테이블을 얻는 방법

예 : user_role 테이블에서 user_id로부터 해당 사용자를 얻고 싶습니다. enter image description here

덕분에 ...

+1

정확히 어떤 데이터가 있고 정확히 무엇을 얻고 싶습니까? 피봇 테이블은 다 대다 관계에 사용되므로 사용자 한 명만 얻고 싶지는 않습니다. –

+1

예를 들어 설명해 주시겠습니까? 이미 가지고있는 모델을 보여주고 문제를 제시하면 도움이됩니다. – matiit

답변

1

당신이 User 또는 Role의 어느 하나 개의 인스턴스가 있으면, 당신은 당신의 관계를 얻을 수 있습니다. 한 사용자의 모든 역할을 얻으려면, 당신은 역할의 모든 사용자를 얻기 위해,이

$user = App\User::find(1); 

foreach ($user->roles as $role) { 
    echo $role->operations; 
} 

같은 방법을 수행 할 수 있습니다,이

$role = Role::find(1); 

foreach ($role->users as $user) { 
    echo $user->email; 
} 

당신은 Laravel에 이것에 대해 모든 정보를 찾을 수 있습니다 사용 문서 도구, https://laravel.com/docs/5.5/eloquent-relationships#many-to-many에 대한 자세한 내용

관련 문제