如何通过ID用户使用外键在一行中显示多个数据,例如: 我的用户拥有多张票证,我需要在每一列中显示每个用户的票证编号。
这是我的控制器
public function followticket()
{
$data = DB::table('tickets')
->join('users', 'users.id', '=', 'tickets.user_id')
->select('users.*', 'tickets.*')->get();
return view('Admin.suivi-tickest',compact('data'));
}
答案 0 :(得分:1)
您可以尝试使用laravel模型关系
用户模型
public function tickets(){
return $this->hasMany('App\Ticket', 'user_id');
}
控制器
public function followticket()
{
$users = User::withCount('tickets')->get();
return view('Admin.suivi-tickest',compact('users'));
}
OR
如果使用查询生成器,则可以这样尝试
$users = DB::table('users')
->join('tickets', 'users.id', '=', 'tickets.user_id')
->select('users.*', DB::raw('count(*) as tickets_count'))
->groupBy('id')
->get();
模板
@foreach($users as $user)
{{$user->id}} {{$user->email}} {{$user->tickets_count}}
@endforeach