This bundle provides some tools for a better integration of LibrinfoDoctrineBundle behaviours in Sonata Admin
- having a working Symfony2 environment
- having created a working Symfony2 app (including your DB and your DB link)
- having composer installed (here in /usr/local/bin/composer, with /usr/local/bin in the path)
$ composer require libre-informatique/base-entities-bundle dev-master
Edit your app/AppKernel.php file and add your "libre-informatique/base-entities-bundle" :
// app/AppKernel.php
// ...
public function registerBundles()
{
$bundles = array(
// ...
// The libre-informatique bundles
new Blast\BaseEntitiesBundle\BlastCoreBundle(),
new Blast\BaseEntitiesBundle\LibrinfoDoctrineBundle(),
new Blast\BaseEntitiesBundle\BlastBaseEntitiesBundle(),
// your personal bundles
);
}
Activate the listeners you need in your application (add those lines to app/config/config.yml
) :
# Enable LibrinfoDocrineBundle event listeners
librinfo_doctrine:
orm:
default:
naming: true
guidable: true
timestampable: true
addressable: true
treeable: true
nameable: true
labelable: true
emailable: true
descriptible: true
searchable: true
loggable: true
# List of entity search-able indexed fields
entity_search_indexes:
Me\MyBundle\Entity\MyEntity:
fields:
- name
- fulltextName
- firstname
- lastname
- description
- email
- url
Add/remove the needed behaviours for each orm connection used by your application.
Under entity_search_indexes
key, you can set search indexes for each entity that should be indexable.
- naming: provides a database table naming based on your vendor / bundle / entity
- guidable: provides GUID primary keys to your entities
- timestampable: provides createdAt / updatedAt fields and doctrine listeners to your entities
- addressable: provides address fields to your entities (address, city, zip, country...)
- treeable: provides tree structure to your entities
- nameable: provides a name field to your entities
- labelable: provides a label field to your entities
- emailable: provides email related fields to your entities
- descriptible: provides a description field to your entities
- searchable: provides a search index based on a selection of fields
- loggable: tracks your entities changes and is able to manage versions
Learn how to use them, how they work, and by extension learn how to create new behaviors shaped to your needs, reading the specific documentation.
The bundle provides some form types, learn more about this, reading the specific documentation.