在 symfony 4 中生成 CRUD

Generating CRUD in symfony 4

Symfony 4.0 发布后,不再支持SensioGeneratorBundle。因此命令 php app/console generate:doctrine:crud 不可用。

他们建议使用 MakerBundle,但我找不到适合 CRUD 生成的替代品。

有人能帮忙吗?

目前MakerBundle仅支持几个核心命令。您可以在问题中查看列表 here. Unfortunately there's no CRUD generator. But there some discussion about it,这样您就可以了解将要完成的工作。

如果您需要的只是样板代码生成器,而不是像 EasyAdminBundle you should consider creating your own maker 这样的结构化解决方案。

您可以使用 make command in Symfony4+ (and it's quite an improvement!), from the MakerBundle:

php bin/console make:crud

它会提示你要哪个实体的 crud。它在 /src/controller 中生成具有索引、新建、更新、查看和删除方法的控制器,在 /templates 中具有匹配模板。

有用知识:如果您 运行 make:entity,稍后 运行 再次执行该命令并输入现有实体,它会响应与:

Your entity already exists! So let's add some new fields!

Symfony4(感谢@jelle)

composer require symfony/maker-bundle --dev

composer require symfony/form symfony/validator symfony/twig-bundle symfony/orm-pack symfony/security-csrf

php bin\console make:crud

The class name of the entity to create CRUD (e.g. BravePuppy):
 >

首先安装前置包

composer require twig-bundle security-csrf

然后你可以运行

php bin/console make:crud

之后只需输入您要凝乳的实体名称

The class name of the entity to create CRUD (e.g. BlogPosts):
 >