Skip to content
(追記) (追記ここまで)

Add Column

You can add a custom column to your response by using the addColumn api.

{note} added columns are assumed to be computed columns and not part of the database. Thus, search/sort will be disabled for those columns. If you need them, use the editColumn api instead.

Add Column with Blade Syntax

use Yajra\DataTables\Facades\DataTables;
Route::get('user-data', function() {
$model= App\User::query();
returnDataTables::eloquent($model)
->addColumn('intro', 'Hi {{$name}}!')
->toJson();
});

Add Column with Closure

use Yajra\DataTables\Facades\DataTables;
Route::get('user-data', function() {
$model= App\User::query();
returnDataTables::eloquent($model)
->addColumn('intro', function(User$user) {
return'Hi '.$user->name.'!';
})
->toJson();
});

Add Column with View

{tip} You can use view to render your added column by passing the view path as the second argument on addColumn api.

use Yajra\DataTables\Facades\DataTables;
Route::get('user-data', function() {
$model= App\User::query();
returnDataTables::eloquent($model)
->addColumn('intro', 'users.datatables.intro')
->toJson();
});

Then create your view on resources/views/users/datatables/intro.blade.php.

Hi {{ $name }}!

Add Column with specific order

{tip} Just pass the column order as the third argument of addColumn api.

use Yajra\DataTables\Facades\DataTables;
Route::get('user-data', function() {
$model= App\User::query();
returnDataTables::eloquent($model)
->addColumn('intro', 'Hi {{$name}}!', 2)
->toJson();
});

AltStyle によって変換されたページ (->オリジナル) /