2017-01-11 17 views
1

enter image description hereLaravelは、多くの関係に多くを持つプロパティを取得します

私のユーザモデル:

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

私のロールモデル:

私は要求ユーザの役割の権限を取得したいlaravelで
public function users() 
{ 
    return $this->belongsToMany('App\User', 'user_role_pivot', 'role_id', 'user_id'); 
} 

public function rolepermissions() 
{ 
    return $this->belongsToMany('App\User', 'role_permissions_connect', 'role_id', 'role_perm_id'); 
} 

、このテーブルの中で私の関係です。どのように私はrole_permissionsのプロパティを取得できますか? 私はこの1つ試してみました:Roleモデルで

$user->roles->rolepermissions->pluck('permission_name') 

答えて

0

をごrolepermissionsApp\Userモデルにリンクされています:

public function rolepermissions() 
{ 
    return $this->belongsToMany('App\User', 'role_permissions_connect', 'role_id', 'role_perm_id'); 
} 

あなたはbelongsToMany('App\User' ...belongsToMany('App\RolePermission'にprobalbyを変更する必要があります。

0
$user=User::find(1);  
foreach($user->roles as $role) 
    { 
     foreach($role->rolepermissions as $rolepermission) 
     { 
      echo $rolepermission->permission_name; 
     } 
    } 
+0

私は試しましたが、何も結果がありません –

関連する問題