vaibhavpandeyvpz/doctrine-datatables
Helper library to implement Doctrine powered server-side processing for jquery-datatables with joins, search, filtering and ordering.
Install
composer require vaibhavpandeyvpz/doctrine-datatables
Basic Usage
<?php
use Doctrine\DataTables;
$connection = /** instanceof Doctrine\DBAL\Connection */;
$datatables = (new DataTables\Builder())
->withIndexColumn('id')
->withQueryBuilder(
$connection->createQueryBuilder()
->select('*')
->from('users')
)
->withRequestParams($_GET);
echo json_encode($datatables->getData());
Advanced Usage (Joins)
<?php
use Doctrine\DataTables;
$connection = /** instanceof Doctrine\DBAL\Connection */;
$datatables = (new DataTables\Builder())
->withColumnAliases([
'id' => 'u.id',
'created_at' => 'u.created_at',
'updated_at' => 'u.updated_at',
])
->withIndexColumn('id')
->withQueryBuilder(
$connection->createQueryBuilder()
->select('u.*', 'p.first_name', 'p.last_name')
->from('users', 'u')
->leftJoin('u', 'profiles', 'p', 'p.user_id = u.id')
)
->withRequestParams($_GET);
echo json_encode($datatables->getData());
License
See LICENSE.md file.