2016-05-23 57 views
1

堆栈器 我在查看包含连接语句的数据时遇到了问题。显示来自左连接查询的数据[Laravel 5]

public function view(Request $id) 
{ 
    $user_id = $id->input('id'); 
    $users = DB::table('users')->select('*') 
       ->leftjoin('role_user', 'users.id', '=', 'role_user.user_id') 
       ->leftjoin('roles', 'roles.id', '=', 'role_user.role_id') 
       ->where('users.id', '=', $user_id)->get(); 
    return view('/admin/view_user', ['users' => $users]); 
} 

从上面的代码,我怎么显示行和连接的作用,从表中的数据,并ROLE_USER

回答

1

试试这个:

public function view(Request $id) 
{ 
    $user_id = $id->input('id'); 
    $users = DB::table('users') 
       ->select('users.*','role_user.fieldName','roles.fieldName') 
       ->leftjoin('role_user', 'users.id', '=', 'role_user.user_id') 
       ->leftjoin('roles', 'roles.id', '=', 'role_user.role_id') 
       ->where('users.id', '=', $user_id)->get(); 
    return view('/admin/view_user', ['users' => $users]); 
} 

tableName.fieldName得到perticalur表中的数据在JOIN查询

+0

我尝试了上面的代码,它似乎产生一个错误“Undefi ned属性:stdClass :: $ roles“。这是代码来显示输出 ​​{{$用户 - > roles.name}} ​​{{$用户 - >名}} ​​{{$用户 - >电子邮件}} – Gooner

+0

您无法通过{{$ users-> roles.name}}访问价值。 –

+0

所以我应该怎么做才能访问所需的表列?这是我第一次与Laravel玩过。 – Gooner