Doctrine orm 从Mysql数据库生成模型

Doctrine orm 从Mysql数据库生成模型,doctrine-orm,model,Doctrine Orm,Model,我正在做一个使用条令的项目。所以我开始学习教义,写简单的测试,并坚持在一开始。我以前开发过很多cakePHP应用程序,我对蛋糕烘焙有很好的想法 我有一个测试mysql数据库和2个表。我想首先生成所有模型类,并将它们包含在我的MVC应用程序到CRUD的控制器中 我使用composer安装了条令,并在项目文件夹中获得了一个名为/vendor的文件夹。在项目文件夹中创建了一个新的bootstrap.php /vendor /bootstrap.php bootstrap.php中的代码是 <

我正在做一个使用条令的项目。所以我开始学习教义,写简单的测试,并坚持在一开始。我以前开发过很多cakePHP应用程序,我对蛋糕烘焙有很好的想法

我有一个测试mysql数据库和2个表。我想首先生成所有模型类,并将它们包含在我的MVC应用程序到CRUD的控制器中

我使用composer安装了条令,并在项目文件夹中获得了一个名为/vendor的文件夹。在项目文件夹中创建了一个新的bootstrap.php

/vendor
/bootstrap.php 
bootstrap.php中的代码是

<?php

// bootstrap.php
require_once "vendor/autoload.php";

use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;

$paths = array("/path/to/entities-or-mapping-files");
$isDevMode = false;

// the connection configuration
$dbParams = array(
    'driver' => 'pdo_mysql',
    'user' => 'root',
    'password' => '',
    'dbname' => 'test',
);

$config = Setup::createAnnotationMetadataConfiguration($paths, $isDevMode);
$em = EntityManager::create($dbParams, $config);

我知道您希望从数据库生成一组实体类和映射信息。对于Doctrine,您需要实体类和它们的映射信息。映射信息基本上是一组.yml或.xml文件。这两件事都可以使用条令提供的工具从数据库生成。这通常在项目开始时完成一次。根据映射信息原则,您可以自动生成可以在代码中使用的PHP类(例如持久化实体)。映射信息也可以作为伪注释添加到类中,但我没有这方面的经验,所以我不会深入讨论

您要查找的命令是

php doctrine orm:convert-mapping --from-database yml /path/to/mapping-path-converted-to-yml
这假设您已经将条令配置为访问数据库

完成此操作后,您可以使用

php doctrine orm:generate-entities
这将创建用于CRUD操作的类。要使用这些类,只需在代码中包含它们,然后使用EntityManager对象对它们进行操作

有关反向工程的更多信息,请参见:


顺便说一句,如果您在MySQL工作台文件中有一个模式,那么可以使用脚本生成实体类和映射信息。

模型不是类或对象。而且它肯定不是数据库表的抽象。模型是应用程序中的一个层。好的,我可能需要重新定义我的问题。我想从Mysql数据库中创建实体或模型类