2017-08-16 24 views
0

私はLaravel 5.4とDatatable 7.xを使用しています。私はAdminLTEも使用しています。私は 'Status'という名前の列が必要です。私はコントローラに以下のコードを書いた。Laravelデータ出力の出力

return Datatables::of($users) 
      ->addColumn('status', function(Users $users){ 
       $status  = (($users->status == 1)? 
            '<a href="" class="btn btn-xs btn-warning"><i class="fa fa-eye"></i></a>' 
            : 
            '<a href="" class="btn btn-xs btn-warning"><i class="fa fa-eye-slash"></i></a>' 
           ); 

       $html  = '<div class="btn-group"> 
            '.$status.' 
           </div>'; 

       return $html; 
      }) 
      ->setRowId('id') 
      ->make(true); 

私の出力は

enter image description here

以下のようなものです。しかし、私はボタンを必要とします。この点で誰も助けてくれますか?

答えて

1

setColumnメソッドでHTMLまたはビューを使用する場合は、rawColumnsメソッドの列を宣言して、HTMLからエスケープしないようにする必要があります。

return Datatables::of($users) 
      ->addColumn('status', function(Users $users){ 
       $status  = (($users->status == 1)? 
            '<a href="" class="btn btn-xs btn-warning"><i class="fa fa-eye"></i></a>' 
            : 
            '<a href="" class="btn btn-xs btn-warning"><i class="fa fa-eye-slash"></i></a>' 
           ); 

       $html  = '<div class="btn-group"> 
            '.$status.' 
           </div>'; 

       return $html; 
      }) 
      ->setRowId('id') 
      ->rawColumns(['status']) 
      ->make(true); 

https://yajrabox.com/docs/laravel-datatables/master/raw-columns