grossum / custom-entity-manager
Custom entity manager bundle
Installs: 368
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 8
Forks: 2
Open Issues: 1
Type:symfony-bundle
Requires
- php: >=5.6 || ^7.0
- symfony/framework-bundle: ~2.7 || ~3.0
This package is not auto-updated.
Last update: 2024-11-09 18:32:53 UTC
README
Installation
Step 1: Download the Bundle
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require grossum/custom-entity-manager
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Step 2: Enable the Bundle
Then, enable the bundle by adding the following line in the app/AppKernel.php
file of your project:
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new Grossum\CustomEntityManagerBundle\GrossumCustomEntityManagerBundle(), ); // ... } // ... }
Step 3: Services configuration
You need to add tag name to your entity manager service definition:
tags: // ... - {name: entity.custom_manager}
Your entity manager classes must implement ManagedClassNameInterface interface and provide information about full name of managed class by getManagedClassName method.
Step 4: Usage
// ... /** @var EntityManagerLoader $entityManagerLoader */ private $entityManagerLoader; // ... public function __construct( EntityManagerLoader $entityManagerLoader, // ... ) { $this->entityManagerLoader = $entityManagerLoader; // ... } // ... /** * param string $className * return ManagedClassNameInterface */ public function getEntityManagerByClassName($className) { return $this->entityManagerLoader->getManagerForClass($className); } // ...