tmsolution / filternator-bundle
Bundle to use knp paginator bundle and lexik form filter bundle
Installs: 110
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 2
Type:symfony-bundle
Requires
- php: >=5.3.2
- knplabs/knp-paginator-bundle: 2.*
- lexik/form-filter-bundle: ~5.0
This package is not auto-updated.
Last update: 2024-10-26 19:16:08 UTC
README
#Filter-Nator
This bundle is a simple link between the KnpPaginatorBundle and the LexikFormFilterBundle allowing entities to be filtered (Filter) and paginated (Nator).
##Installation
###Step 1
Add the Filter-Nator bundle as a dependency in your composer.json:
{ require: { "savvy/filternator-bundle": "dev-master" } }
###Step 2 Update the dependecies using composer:
$ php composer.phar update
###Step 3 Add the Filter-Nator bundle to the AppKernal.php file:
class AppKernel extends Kernel { public function registerBundles() { $bundles = array( //... new Savvy\FilterNatorBundle\SavvyFilterNatorBundle(),
##Usage
The Filter-Nator bundle has one method, filterNate()
. This method
requires a query builder object, a filter form and a unique string
to be used to store the form data in the session. The returned value
is the pagination object from the KnpPaginatorBundle:
//Any class with access to the ContainerInterface object $pagination = $this->container->get("savvy.filter_nator")->filterNate($filterBuilder, $form, 'foo');
###Options
There are two additional arguments that can be given to filterNate()
to set the required number
of entites to return and the page number to start on:
//Any class with access to the ContainerInterface object $pagination = $this->container->get("savvy.filter_nator")->filterNate( $filterBuilder, $form, 'foo', 5, /*return 5 entities*/ 1 /*starting from page 1*/ );