在Symfony中从现有实体文件生成orm.yml映射文件

3

有没有一种方法可以从现有的实体文件src\AppBundle\Entity\Example.php生成src\AppBundle\Resources\Config\doctrine\example.orm.yml文件,而不是使用php bin/console doctrine:generate:entity创建新的实体?


这是Symfony的一个非常有用的功能,但我很惊讶地发现Doctrine即将完全删除此功能!“...从现有数据库生成实体的此功能将在下一个Doctrine版本中完全删除。” https://symfony.com/doc/master/doctrine/reverse_engineering.html - Aaron Belchamber
1个回答

1
生成这个文件,你需要使用Doctrine来完成。如果你已经有了数据库,可以执行以下操作:
    php bin/console doctrine:mapping:import

但是如果你想使用“代码优先”的方式,我猜你需要自己创建映射信息,然后使用。

    app/console generate:doctrine:entities <Your Bundle>
    app/console doctrine:schema:update --dump-sql
    app/console doctrine:schema:update --force

谢谢,是的,总是有手动创建orm.yml文件的选项,但我希望有一个命令可以将现有的实体php文件转换为orm.yml文件(在此之前不存在任何数据库表)。 - Michael Millar
如果您的实体已经有映射信息(注释),您可以尝试使用以下命令:app/console doctrine:mapping:convert yml - Maxime Thévenot

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接