不推荐使用doctrine:generate:entities命令

时间:2018-11-01 15:32:04

标签: php symfony orm doctrine

注意:doctrine:generate:entities命令已被弃用。        要了解有关贫血和富血模特之间差异的更多信息,请访问她  http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/tutorials/get ing-started.html#adding-behavior-to-entities。        如果要生成实体,请使用make:entity --regenerate from 改为MakerBundle。

1 个答案:

答案 0 :(得分:0)

我在Symfony 3.4项目中遇到了此消息。

该消息建议您使用Symfony Maker Bundle的make:entity命令而不是doctrine:generate:entities

Symfony Maker Bundle与Symfony 3.4兼容,但不包括在内。

解决方案1:忽略消息,继续使用doctrine:generate:entities,因为它仅生成代码,并且如果以后升级Symfony并删除doctrine:generate:entities,则该代码不会停止工作。

解决方案2:安装Symfony Maker Bundle,并使用建议的替换命令:composer require symfony/maker-bundle --dev。 (我还必须更新doctrine/inflector

https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html

如果您确实在使用Symfony 3.4,我个人会使用解决方案1。如果您的实体和存储库,制造商捆绑包对于位置和结构似乎很挑剔,并且从外观上看仍然存在一些错误。

关于“贫血症模型与富模型之间的差异”的部分似乎是关于make命令覆盖您的getter和setter的警告。如果您在其中包含自定义代码,则可能会丢失它。