Symfony中的多捆2

时间:2012-08-10 07:28:17

标签: symfony

我从Symfony 2创建项目,但是我有一个问题: 在项目中有多个包(例如:AdminBundle和FontEndBundle)

  1. 案例1:Doctrine orm和Entities在FrontEndBundle上生成,然后从AdminBundle生成,我将通过FrontEndBundle:Object调用实体,它可以正常工作。
  2. 案例2:我想配置结构

    的src /项目/

    • 模型/实体
    • OrmYml /教义/ ORM
    • Bundles(包含FontEndBundle& AdminBundle)
    • 扩展
  3. 在案例2中,如何配置实体映射以生成到src/Model/Entity目录的实体?因为当我使用Command:doctrine:generate:entities Project/Model/Entity时,

      

    错误:命名空间“Project \ Model \ Entity”不包含任何映射   实体。

2 个答案:

答案 0 :(得分:0)

您如何声明您的实体?您应该将您的实体放在一个包中。你不能把它们放在捆绑之外。

答案 1 :(得分:0)

通常,Symfony开发人员创建第三个名为“CoreBundle”的捆绑包(例如),您将所有共享资源放在三个捆绑包之间,即实体,某些服务(如twig扩展),config(使用service.xml / yml),...此外,您可以删除此捆绑包中的控制器和视图目录,这些目录是无用的(不要忘记通过删除CoreBundle控制器注入来清理app / config / routing.yml文件)!

然后使用以下方法调用右侧包中的实体:

use MyName\Bundle\CoreBundle\Entity\MyEntity;

永远不要创建一个不在捆绑中的模型库,这不是Symfony哲学,你真的错了!