Answer at 18/02/13
Here is a way to pass a specific entity manager from services.yml
Doctrine generates a new service name relative to their names.
Example:
@doctrine.orm.default_entity_manager In this case, it generates 2 others entity manager
@doctrine.orm.main_entity_manager @doctrine.orm.sub_entity_manager The argument passed is a Doctrine\ORM\EntityManager object
In my case:
services.yml
submanager: arguments: [ @doctrine.orm.sub_entity_manager ] Update 22/08/13
An alternative to this would be to directly give the repository instead of the manager.
To do such, you must create a service which will hold the repository.
services.yml
services: acme.foo_repository: class: Doctrine\Common\Persistence\ObjectRepository factory_service: doctrine.orm.main_entity_manager factory_method: getRepository arguments: - "AcmeMainBundle:Foo" We let doctrine generate the given repository.
Then we can inject it in another service
services: mainmanager: class: Acme\MainBundle\MainManager arguments: - @acme.foo_repository Answer at 18/02/13
Here is a way to pass a specific entity manager from services.yml
Doctrine generates a new service name relative to their names.
Example:
@doctrine.orm.default_entity_manager In this case, it generates 2 others entity manager
@doctrine.orm.main_entity_manager @doctrine.orm.sub_entity_manager The argument passed is a Doctrine\ORM\EntityManager object
In my case:
services.yml
submanager: arguments: [ @doctrine.orm.sub_entity_manager ]