首页 > 解决方案 > 在 laravel 的刀片模板中的单个视图上分别从多个表中显示多个变量数据

问题描述

我想在 foreach 循环中的同一视图上显示两个变量数据

    public function getWalletList()
    {
        $data = Data::orderBy('id','desc')->get()->toArray();
        $user_ids = array_column($data, 'id');
        $user_data = User::whereIn('id',$user_ids)->get()->toArray();
        $d= array('data'=>$data,'user'=>$user_data);
        return view('wallet_list', compact('d'));
    }

那么如何在 laravel 刀片模板上显示数据

@foreach($d as $value)                                        
    <tr>
        <td>{{$value['wallet']['name']}}</td>
        <td>{{$value->user_id}}</td>
        <td>{{$value->price}}</td>
        <td>{{$value->price}}</td>
        <td>{{$value->updated_at}}</td>
    </tr>
@endforeach

标签: laravel-5

解决方案


你为什么不使用两个 foreach ?

   @foreach($d as $value)                                        
      <tr>
         <td>{{$value['wallet']['name']}}</td>
         <td>{{$value->user_id}}</td>
         <td>{{$value->price}}</td>
         <td>{{$value->price}}</td>
         <td>{{$value->updated_at}}</td>
      </tr>
   @endforeach
   @foreach($b as $value)                                        
      <tr>
         <td>{{$value['wallet']['name']}}</td>
         <td>{{$value->user_id}}</td>
         <td>{{$value->price}}</td>
         <td>{{$value->price}}</td>
         <td>{{$value->updated_at}}</td>
      <tr>
   @endforeach

推荐阅读