renearias / arxis-datatables-bundle
Symfony Datatable Bundle For Doctrine2 Entities
Installs: 316
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 234
Type:symfony-bundle
Requires
- php: >=5.3.2
- friendsofsymfony/jsrouting-bundle: @stable
- symfony/framework-bundle: ~2.6
Requires (Dev)
- sensio/generator-bundle: ~2.3
Suggests
- components/jquery: 1.11.3
- datatables/datatables: 1.10.7
- moment/moment: 2.10.2
README
Help wanted
To all russian and polish speaking contributors. Please help me to update the translation files. Thanks a lot!
Recent Important Changes
The ClientSide mode is no longer supported by me!
- use parent service instead of tagging datatables view class
services: app.datatable.post: class: AppBundle\Datatables\PostDatatable parent: sg_datatables.datatable.abstract
- unlimited nested association support and fix filtered counter when using a custom query
- start for PostgreSql support
- Datatable Events supported
- some new translations
- render_if Closure parameter in action column
- outsourcing individual filter in new classes, see below example
public function buildDatatable(array $options = array()) { // ... $users = $this->em->getRepository('AppBundle:User')->findAll(); $this->columnBuilder ->add('title', 'column', array( 'title' => 'Title', 'filter' => array('text', array( 'search_type' => 'eq' )) )) ->add('visible', 'boolean', array( 'title' => 'Visible', 'filter' => array('select', array( 'search_type' => 'eq', 'select_options' => array('' => 'All', '1' => 'Yes', '0' => 'No') )), )) ->add('createdby.username', 'column', array( 'title' => 'Createdby User', 'filter' => array('select', array( 'search_type' => 'eq', 'select_options' => array('' => 'All') + $this->getCollectionAsOptionsArray($users, 'username', 'username'), )) )) ->add('createdAt', 'datetime', array( 'title' => 'Created', 'filter' => array('daterange', array()), )) ; }
Screenshots
Table with Bootstrap3 integration:

Table with default stylesheet (display
):

Documentation
Extensions like Buttons or Responsive
Example
Integrating 3rd party stuff
Integrate the Translatable behavior extension for Doctrine 2
Integrate the LiipImagineBundle / ImageColumn, GalleryColumn and thumbnails
Limitations and Known Issues
Much like every other piece of software SgDatatablesBundle
is not perfect and far from feature complete.
Use this Bundle in ServerSide mode
The ClientSide mode is no longer supported by me.
Other limitations
- This bundle does not support multiple Ids
- Searching and filtering on a virtual column not yet implemented and disabled by default
- PostgreSql is currently not fully supported
Reporting an issue or a feature request
Issues and feature requests are tracked in the Github issue tracker.
Friendly License
This bundle is available under the MIT license. See the complete license in the bundle:
Resources/meta/LICENSE
You are free to use, modify and distribute this software, as long as the copyright header is left intact (specifically the comment block which starts with /*)!