Skip to content

Latest commit

 

History

History
47 lines (33 loc) · 1.07 KB

order-column.md

File metadata and controls

47 lines (33 loc) · 1.07 KB

Order Column

In some cases, you may want to use a custom order sql for a specific column. To achieve this, you can use orderColumn api.

{tip} Order column has a special variable $1 which is being replace as the order direction value of the request.

In this example, we will order the column name with nulls as last result.

use DataTables;

Route::get('user-data', function() {
	$model = App\User::query();

	return DataTables::eloquent($model)
				->orderColumn('name', '-name $1')
				->toJson();
});

Here is another example of orderColumn using closure.

use DataTables;

Route::get('user-data', function () {
    $model = App\User::query();

    return DataTables::eloquent($model)
                 ->orderColumn('name', function ($query, $order) {
                     $query->orderBy('status', $order);
                 });
});

Disable ordering via orderColumn.

use DataTables;

Route::get('user-data', function () {
    $model = App\User::query();

    return DataTables::eloquent($model)
                 ->orderColumn('name', false);
});