yajra/laravel-datatables-oracle
Laravel package for DataTables server-side processing via AJAX. Build JSON responses from Eloquent, Query Builder, or Collections using a fluent API (DataTables::eloquent/query/collection/make). Supports modern Laravel versions and common DataTables features.
yajra/laravel-datatables-oracle variant extends the core package to support Oracle databases, addressing a gap in Laravel’s native support for complex Oracle queries (e.g., hierarchical data, advanced joins, or Oracle-specific functions).composer require yajra/laravel-datatables-oracle), with minimal configuration (service provider/facade registration and optional vendor:publish for customization).APP_DEBUG=true) logs queries and inputs, accelerating troubleshooting.CONNECT BY, MODEL clause).ROWNUM, materialized views) and monitor query plans. Cache frequent queries with Laravel’s cache or Redis.orderColumn, filterColumn) for user-provided input./*+ FIRST_ROWS */ hints).gvenzl/oracle-xe) for consistent testing.ROWS BETWEEN, CONNECT BY).PIVOT/UNPIVOT).yajra/laravel-datatables-oracle.// Before: Static Blade table
@foreach($users as $user)
<tr><td>{{ $user->name }}</td></tr>
@endforeach
// After: DataTables API
Route::get('/users', function () {
return DataTables::eloquent(User::query())->make(true);
});
$('#users-table').DataTable({
processing: true,
serverSide: true,
ajax: '/users'
});
yajra/laravel-datatables-oracle:^12 or ^13).pdo_oci) and laravel/oracle package for advanced features.composer require yajra/laravel-datatables-oracle:^13
php artisan vendor:publish --provider="Yajra\DataTables\DataTablesServiceProvider"
config/datatables.php):
'query_builder' => 'Yajra\DataTables\Oracle\OracleQueryBuilder',
Route::get('/admin/users', [UserController::class, 'index']);
public function index()
{
return DataTables::eloquent(User::query())
->addColumn('action', function ($user) {
return '<button>Edit</button>';
})
->make(true);
}
$(document).ready(function() {
$('#users-table').DataTable({
serverSide: true,
ajax: '/admin/users',
columns: [
{ data: 'name', name: 'name' },
{ data: 'action', name: 'action', orderable: false, searchable: false }
]
});
});
How can I help you explore Laravel packages today?