2016-08-19 9 views
1

Ich muss meine Benutzer mit ihren Rollen (aufzulisten, nicht zu überprüfen!) Auf Standard-Auth-System.
Ich some wie folgt aus:Laravel - Holen Sie sich Benutzer mit ihren Rollen Name

$users = DB::table('users') 
      ->join('user_roles', 'users.id', '=', 'user_roles.user_id') 
      ->select('id', 'first_name', 'role_id') 
      ->get(); 

Und ich diese bekommen:

array:2 [▼ 
    0 => {#552 ▼ 
    +"id": 9670 
    +"first_name": "Paweł" 
    +"role_id": 1337 
    } 
    1 => {#553 ▼ 
    +"id": 9670 
    +"first_name": "Paweł" 
    +"role_id": 100 
    } 
] 

Aber ich brauche diese:

array:2 [▼ 
    0 => {#552 ▼ 
    +"id": 9670 
    +"first_name": "Paweł" 
    +"roles": 'Admin, AnotherRole' 
    } 
] 

Wie kann ich das tun? Strukturen meiner Tabellen:
Benutzer
'id' 'Vorname' ... etc.
Rollen
'id' 'name'
user_roles
'user_id' 'role_id'

Antwort

1

Versuchen Dieser Code

App/User

public function roles() 
{ 
    return $this->belongsToMany('App\Role'); 
} 

-Controller

use App/User; 

    public funtion getUsers(User $user) { 
    $getUsersWithRole = $user->with('roles')->get(); 
    dd($getUsersWithRole); 

    } 
0

Benutzermodell:

public function roles() 
{ 
    return $this->belongsToMany('App\Role'); 
} 

Steuerung:

use App/User; 

    public funtion index(User $user) { 
    $users= User::with('roles')->get();  
    } 
Verwandte Themen