- Can I install tejadong/datatables-bundle in a Laravel application?
- No. tejadong/datatables-bundle is a Symfony bundle, not a Laravel package. It depends on a Symfony kernel bundle registry, DependencyInjection extensions, and services.yml wiring that Laravel does not provide. Composer may resolve the dependency, but the bundle will not boot or register routes and services in a Laravel application.
- What does tejadong/datatables-bundle actually do?
- It provides server-side DataTables support for Symfony applications using Doctrine ORM. It converts DQL queries into DataTables JSON with search, sort, and pagination handling. It also manages column mapping, join aliases, and aggregate select expressions.
- Does version 2.0.4 add Laravel support or change framework compatibility?
- No. Version 2.0.4 is a scoped bugfix to the DQL generation layer for nested Doctrine association joins. It does not add a Laravel service provider, Eloquent support, or modern Symfony wiring. The package remains a Symfony bundle.
- What exactly does the 2.0.4 bugfix change?
- It fixes column paths that traverse a Doctrine collection association and then another relation, such as pertenencias.centroDeportivo.nombre. Previously only the terminal join was treated as a collection, so an intermediate join identifier leaked into SELECT and GROUP BY and produced one row per collection element. The fix marks every join from the first collection onward and excludes those identifiers from setSelect while preserving the joins for alias-based filters.
- Which Symfony, Doctrine, and DataTables versions does it require?
- Symfony2+ suggests Symfony 2.3 to 2.8 lineage, which reached end of life in November 2018. It requires Doctrine ORM with entity metadata and association mappings. It targets a DataTables.js 1.x-era client and uses legacy response keys such as iTotalDisplayRecords.
- How do I install and wire it in a Symfony application?
- Install it with Composer and register the bundle in AppKernel or bundles.php as you would any Symfony bundle. Then configure its DependencyInjection extension and services, and define your DataTables columns and routes. Check the repository README for exact service IDs and configuration keys before relying on them.
- What Laravel package should I use instead for server-side DataTables?
- For Laravel, yajra/laravel-datatables is the common server-side DataTables integration for Eloquent and the query builder. You can also implement request parsing and JSON formatting yourself if you need tight control. tejadong/datatables-bundle is not a substitute because its Doctrine DQL and Symfony bundle wiring do not port.
- Is tejadong/datatables-bundle maintained and safe for production?
- Maintainership is best described as alive but unstaffed: a credible 2.0.4 patch shows the author responds to defects, but the project has 0 stars, 0 dependents, a single-author namespace, and no community security triage. Release notes and commit messages are in Spanish, so future review assumes Spanish fluency. Treat technical risk as high for new production use.
- Can I reuse its DQL join and GROUP_CONCAT logic with Eloquent?
- Not directly. setSelect(), GROUP BY, GROUP_CONCAT, join-alias management, and the legacy iTotalDisplayRecords response key are Doctrine- and DataTables-1.x-specific. There is no Eloquent translation of that code path; you would need to reimplement the collection-join handling for Laravel.
- What should I verify before depending on release 2.0.4?
- Verify the tag-to-commit mapping and the composer.json version constraint because release metadata has shown anomalies. Run it against your actual Symfony kernel and Doctrine mappings, and test nested collection joins with filters and pagination. Also confirm the PHP and Symfony versions in composer.json match your runtime.