Php 命名空间“src\AppBundle\Entity\YesNo”不包含任何映射的实体。

Php 命名空间“src\AppBundle\Entity\YesNo”不包含任何映射的实体。,php,symfony,doctrine-orm,Php,Symfony,Doctrine Orm,我正在使用Symfony2,并试图使用YML创建对象。与Symfony 1.x文档相比,这方面的文档似乎非常粗略 我的树结构如下所示: ├── src │   ├── Acme │   │   └── DemoBundle │   ├── AppBundle │   │   ├── AppBundle.php │   │   ├── Controller │   │   ├── Resources │   │   ├── Tests │   │   └── Utils 我在src/AppBun

我正在使用Symfony2,并试图使用YML创建对象。与Symfony 1.x文档相比,这方面的文档似乎非常粗略

我的树结构如下所示:

├── src
│   ├── Acme
│   │   └── DemoBundle
│   ├── AppBundle
│   │   ├── AppBundle.php
│   │   ├── Controller
│   │   ├── Resources
│   │   ├── Tests
│   │   └── Utils
我在src/AppBundle/Resources/config/doctor/reference_entities.yml中有一个文件,其中包含以下内容:

## YAML Template.
---
# Yes/No
AppBundle\Entity\YesNo:
    type: entity
    table: yesno
    id:
        id:
            type: integer
            generator: { strategy: AUTO }
    fields:
        name:
            type: string
            length: 100
    indexes:
        name_idx:
            columns: name

    uniqueConstraints:
        search_idx:
            columns: [name]
我根据Symfony文档键入以下控制台命令:

php app/console doctrine:generate:entities src/AppBundle/Entity/YesNo
这是控制台的输出:

Generating entities for namespace "src\AppBundle\Entity\YesNo"



  [RuntimeException]                                                            
  Namespace "src\AppBundle\Entity\YesNo" does not contain any mapped entities.  



doctrine:generate:entities [--path="..."] [--no-backup] name

我做错了什么?

我不知道您如何处理YAML文件,但我认为您应该生成一个实体类,并实现所有getter和setter

因此,在实体文件夹中放置一个名为YesNo的类:

<?php
namespace Test\AppBundle\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity()
 * @ORM\Table(name="yesno")
 */
class YesNo {
    .... all your getters / setters
}
下一个问题是,在像Acme一样将包直接放在源文件夹中之前,应该定义一个名称空间。您应该创建类似于

公司\MyBundle

下面是一些如何创建实体类的示例

^^^^^
在这里,您可以找到完整的示例和所需的所有命令

我明白了,似乎在Symfony2中,ORM的使用方式已经发生了很大的变化。我上次使用Symfony 1.4.x和Propel。我会按照你的建议做些修改,如果行得通,我会接受你的回答事实上,我刚刚看了你发送的第二个链接。我更喜欢使用YML,因为我对它很熟悉,而且我可以轻松地创建FKs、索引和确保引用完整性等。你应该先看看Symfony2;在你开始之前。。。实体在实体类中设置。。。请阅读手册。。。好啊我看了手册。这是一个有效的工作流:1。使用生成实体并选择yml格式2。修改生成的yml文件以添加复杂关系等3。是否使用generate entities更新生成的php类?