Php 基于模式声明使用Doctrine2创建表和实体

Php 基于模式声明使用Doctrine2创建表和实体,php,zend-framework,orm,command-line,doctrine-orm,Php,Zend Framework,Orm,Command Line,Doctrine Orm,我试图让Doctrine2和Zend框架一起工作。到目前为止,我已经能够自动加载Doctrine2并连接到我的数据库 我现在期待着使用yml中的模式声明创建我的表: Doctrine\Entities\User: type: entity table: core_user columns: id: primary: true autoincrement: true type: inte

我试图让
Doctrine2
Zend框架
一起工作。到目前为止,我已经能够自动加载
Doctrine2
并连接到我的数据库

我现在期待着使用
yml
中的模式声明创建我的表:

Doctrine\Entities\User:
    type: entity
    table: core_user
    columns:
        id:
            primary: true
            autoincrement: true
            type: integer(11)
            notnull: true
        name:
            type: string
            notnull: true
            default: ''
        middle_name:
            type: string
            default: ''
        last_name:
            type: string
            notnull:true
            default: ''
        username:
            type: varchar(16)
            default: ''
        email:
            type: string
            notnull: true
            default: ''
        role_id:
            type: integer
        date_creation:
            type: timestamp
        version:
            type: timestamp
我已经能够让命令行工作,但是我不能让它在我的数据库中创建表

我使用的是标准的
Zend框架
文件夹结构

+-- Application
      +-- configs
      +-- controllers
      +-- doctrine
          +-- Schema
              +-- schema.yml
          +-- Entities
          cli-config.php
      +-- layouts
      +-- models
      +-- modules
      +-- view
      bootstrap.php
+-- Public
+-- Library
      +-- Doctrine2
+-- Tests
我的模式声明位于
Application/doctor/schema/schema.yml
中,我希望从中创建数据库
和实体

当我尝试运行命令
orm:schema工具:create
时,我得到以下消息:
没有要处理的元数据类。
我想知道为什么


我的工作方式是否正确,还是应该手动定义实体,然后尝试从中创建表?

检查
cli config.php
中的配置。 您应该使用YAML驱动程序:

// $config instanceof Doctrine\ORM\Configuration
$driver = new YamlDriver(array('/path/to/files'));
$config->setMetadataDriverImpl($driver);
更多