Symfony 4,一种从现有数据库生成实体的方法?

时间:2017-12-07 05:14:13

标签: symfony doctrine symfony-console symfony4

使用Symfony 3及其控制台,我们可以通过命令" php bin / console doctrine:mapping:import"从现有数据库生成实体。 (非常有用!)。

从symfony 4,命令" ./ bin / console doctrine:mapping:import"需要捆绑名称,但symfony 4现在不能使用捆绑包。

使用新版本的symfony,有没有一种方法我没有看到现有数据库中的生成实体(通过示例的mysql)?或者我必须等待新版本的学说才能获得" doctrine:mapping:import"与Symfony 4兼容?

我找到了一个(n)(丑陋的)解决方案。我部署了一次性symfony 3,我将symfony 3链接到我的数据库,并在一个包中生成实体。然后我将生成文件复制到symfony 4。 它很难看,但它有效。哈哈

1 个答案:

答案 0 :(得分:2)

您可以使用

php bin/console doctrine:mapping:convert --from-database annotation ./src/Entity

应该根据数据库设置创建实体。不要忘记添加命名空间,您仍然需要添加getter和setter,但是已经包含了大部分属性,包括注释和一些关系。 (Source

请注意,Doctrine将不再支持下一个Doctrine版本。作为written in the Symfony docs

  

此外,在下一个Doctrine版本中将完全删除从现有数据库生成实体的此功能。