ad-mos/laravel-datatables
DataTables Server-Side API for Laravel Framework
Quick Installation
$ composer require ad-mos/laravel-datatables
Usage examples
1 - Simple table:
public function data(DataTables $dataTables)
{
return $dataTables->provide(new User);
}
2 - Table with joins:
public function data(DataTables $dataTables)
{
$model = new User;
$query = $model->newQuery()
->leftJoin('user_emails', 'user_emails.user_id', '=', 'users.id')
->leftJoin('user_phones', 'user_phones.user_id', '=', 'users.id')
->groupBy('users.id');
$aliases = [
'emails' => 'GROUP_CONCAT(DISTINCT `user_emails`.email SEPARATOR \'|\')',
'phones' => 'GROUP_CONCAT(DISTINCT `user_phones`.phone SEPARATOR \'|\')',
];
return $dataTables->provide($this->model, $query, $aliases);
}
3 - Column search by a different expression than the displayed one:
public function data(DataTables $dataTables)
{
$model = new Record;
$query = $model->newQuery()
->leftJoin('vehicles', 'vehicles.id', '=', 'records.vehicle_id');
$aliases = [
'vehicle' => 'CONCAT(`vehicles`.code, \'||\', `vehicles`.id)',
];
return $dataTables
->setSearchFields(['vehicle' => '`vehicles`.code'])
->provide($model, $query, $aliases);
}
Without it the search for 12 would also match rows where vehicles.id contains 12.
DataTables can be accessed through IoC, helper or facade:
return $dataTables->provide(...);
return datatables()->provide(...);
return \DataTables::provide(...);
License
The MIT License. More information here.
Related Packages
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v2.11 | ^8.0 | ^5.0| | MIT | |
| v2.10 | ^8.0 | ^5.0| | MIT | |
| v2.9 | ^8.0 | ^5.0| | MIT | |
| v2.8 | ^8.0 | ~5.6.0| | MIT | |
| v2.7 | ^7.1| | ~5.6.0| | MIT | |
| v2.6.1 | ^7.1| | ~5.6.0| | MIT | |
| v2.6 | ^7.1| | ~5.6.0| | MIT | |
| v2.5.1 | ^7.1| | ~5.6.0| | MIT | |
| v2.5 | ^7.1| | ~5.6.0| | MIT | |
| v2.4 | ^7.1.3 | ~5.6.0| | MIT | |
| v2.3 | ^7.1.3 | ~5.6.0| | MIT | |
| v2.2 | ^7.1.3 | ~5.6.0| | MIT | |
| v2.1 | ^7.1.3 | ~5.6.0| | MIT | |
| v2.0 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.6 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.5 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.4 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.3 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.2 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9.1 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.9 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.8 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.7 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.6 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.5 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.4 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.3 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.2 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.1 | ^7.1.3 | ~5.6.0| | MIT | |
| v1.0 | ^7.1.3 | ~5.6.0| | MIT |
