2017-05-25 42 views
0

我使用symfony3。有唯一的捆绑 - AppBundle。我使用yml进行注释。他们住在AppBundle \ Resources \ config \ doctrine中。如果我想要一个新实体 - 我创建新的.orm.yml文件,然后运行php bin/console doctrine:generate:entities AppBundle。一切正常。包含名称空间的学说实体

一旦我需要另一个命名空间为我的实体。所以我在doctrine文件夹中创建了一个文件夹Filter。并在那里放置一个Category实体。然后调用'生成'命令。我有一个错误No mapping file found named 'Category.orm.yml' for class 'AppBundle\Entity\Filter\Category'.然后删除Filter文件夹并调用该命令。一切正常。所以这个问题是在一个额外的文件夹中。我试图将Category放在doctrine文件夹中,但将名称空间保留在yml文件(AppBundle \ Entity \ Filter \ Category)中。这是行不通的。

所以问题是:如何创建一个具有父命名空间的antity的注释?

回答

0

可以使用php bin/console doctrine:generate:entity命令测试一下:

实体快捷方式名称:的appbundle:过滤器/分类

这是怎么了你的项目结构将产生。没有在doctrine目录中的子目录,而是沿着YAML文件名中的命名空间:

src/ 
└── AppBundle/ 
    ├── Entity/ 
    │ ├── Filter/ 
    │ │ └── Category.php 
    │ └── SomeEntity.php 
    └── Resources/ 
     └── config/ 
      └── doctrine/ 
       ├── Filter.Category.orm.yml 
       └── SomeEntity.orm.yml 
+0

Works!那么没有子目录,只是指向一个命名空间分离? – FreeLightman