我使用symfony3。拥有唯一的捆绑 - AppBundle
。我使用yml进行注释。它们位于AppBundle \ Resources \ config \ doctrine中。如果我想要一个新实体 - 我创建新的.orm.yml
文件,然后运行php bin/console doctrine:generate:entities AppBundle
。一切正常。
一旦我为我的实体需要另一个命名空间。所以我在Filter
文件夹中创建了一个文件夹doctrine
。并在那里放置一个Category
实体。然后调用'generate'命令。我有一个错误No mapping file found named 'Category.orm.yml' for class 'AppBundle\Entity\Filter\Category'.
然后删除了Filter
文件夹并调用该命令。一切都很好。所以问题出在另一个文件夹中。我尝试将Category
放在doctrine
文件夹中,但将名称空间保留在yml
文件中(AppBundle \ Entity \ Filter \ Category)。这不起作用。
所以问题是:如何使用父命名空间为antity创建注释?
答案 0 :(得分: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