2012-07-19 48 views
0

我试图使用FOSUserBUndleBUndle在symfony2和FOS的实体管理器服务中写哪个类?

XML类是

<service id="fos_user.entity_manager" 
     factory-service="doctrine" 
     factory-method="getEntityManager" 
     class="Doctrine\ORM\EntityManager" 
     public="false"> 
       <argument>%fos_user.model_manager_name%</argument> 
</service> 

我想知道我在

%fos_user.model_manager_name% 

写基本上我所有的XML文件只是转换为哪一类yml文件并制作我的自定义包

回答

2

这就是实体管理器的名称。如果留空,则使用标准实体管理器

//File: vendor\symfony\src\Symfony\Bundle\DoctrineBundle\Registry.php 
    /** 
    * Gets a named entity manager. 
    * 
    * @param string $name The entity manager name (null for the default one) 
    * 
    * @return EntityManager 
    */ 
    public function getEntityManager($name = null) 
    { 
     if (null === $name) { 
      $name = $this->defaultEntityManager; 
     } 

     if (!isset($this->entityManagers[$name])) { 
      throw new \InvalidArgumentException(sprintf('Doctrine EntityManager named "%s" does not exist.', $name)); 
     } 

     return $this->container->get($this->entityManagers[$name]); 
    }