Download the PHP package it/search-bundle without Composer
On this page you can find all versions of the php package it/search-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download it/search-bundle
More information about it/search-bundle
Files in it/search-bundle
Package search-bundle
Short Description A Symfony2 bundle for indexing and searching into single/multiple entities
License MIT
Informations about the package search-bundle
SearchBundle
Symfony2 Bundle : fulltext index and search for multiple Doctrine entities
Installation
Install with composer :
Enable the bundle in your project
Config
Add the following line to your config.yml
:
CLI Tools
To manually index the fields, use the following command :
How to use the bundle
In your controller, use the following lines to get the results in your search page :
The search() function returns a SlidingPagination object (from Knp/Paginator).
Note : When you call the "search" method, il you don't provide a list of classnames as 4th parameter, the service will search in all entities indexed.
How to index content
Manual indexing
The bundle provides one service with two methods to index content.
The following method clears the index table and reindex all contents :
The second method update an object's index into the database :
There is no method for removing a specific index from the database for now. The feature will be implemented soon.
Automatic indexing
New feature since 1.3.0 is an EventListener that automatically create, update and remove indexes when you create, update or remove entities that at mapped by the indexer. As the listener is disabled by default, use this config to enable it :
Note : The listener is disabled by default to stay compatible with older versions of the bundle
Events
Three event are dispatched during objects indexation :
-
ITSearchEvents::PRE_INDEX Dispatched at the beginning of the indexing.
-
ITSearchEvents::PRE_INDEX_OBJECT Dispatched before indexing a specific object. The object is available in the event object.
- ITSearchEvents::POST_INDEX Dispatched after indexing all objects. The SearchIndex objects list is available in the event object.
Example of use
Here is an example of an All-in-one event subscriber :
OR, in Yaml :
All versions of search-bundle with dependencies
symfony/framework-bundle Version ~2.8
twig/twig Version *
doctrine/doctrine-bundle Version *
knplabs/knp-paginator-bundle Version 2.5.*