imade/datatable-model
A dedicated class (model) to configure Chumper's Datatable package for Laravel (https://github.com/Chumper/Datatable) to keep your controllers as clean as possible.
173
2
| Install | |
|---|---|
composer require imade/datatable-model |
|
| Latest Version: | v1.0 |
| PHP: | >=5.3.0 |
| License: | MIT |
| Last Updated: | May 14, 2015 |
| Links: | GitHub · Packagist |
Maintainer: imade
Datatable Model
This is a laravel 5 package for the server and client side of datatables at http://datatables.net/
A dedicated class (model) to configure Datatables.net for Laravel to keep your controllers as clean as possible.
##Example
Your Userscontroller:
class UsersController extends \BaseController {
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
$table = new UserDatatable();
if($table->dataRequest()) return $table->data();
return View::make('resource.index')->withTable($table);
}
}
Dedicated UserDatatable. This class is required to extend "Imade\Datatable\DatatableModel". The two methods "data" and "table" are required.
use Imade\Datatable\DatatableModel;
class UserDatatable extends DatatableModel
{
public $columns = array(
'id' => '#',
'name' => 'Naam',
'email' => 'E-mail'
);
public function data()
{
$query = User::select( array_keys($this->columns) );
return Datatable::query($query)
->showColumns( array_keys($this->columns) )
->make();
}
public function table()
{
return Datatable::table()
->addColumn( array_values($this->columns) );
}
}
##Install
- Install Datatable on: https://github.com/Chumper/Datatable
- Require Imade/Datatable in your composer.json:
"imade/datatable-model": "dev-master"