创建 Symfony 5 骨架实体 - 制造商包不起作用

use*_*918 3 php symfony composer-php

我正在努力奔跑

make:entity
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

“make”命名空间中没有定义命令

您可能正在寻找当前未安装的“MakerBundle”提供的命令。尝试运行“composer require symfony/maker-bundle --dev”

我遵循该建议并通过执行以下操作安装捆绑包:

composer require symfony/maker-bundle --dev
Run Code Online (Sandbox Code Playgroud)

它安装成功: 在此处输入图片说明

然而,当我尝试运行时,make:entity我得到了完全相同的错误:

在此处输入图片说明

“make”命名空间中没有定义命令

您可能正在寻找当前未安装的“MakerBundle”提供的命令。尝试运行“composer require symfony/maker-bundle --dev”

我错过了什么?

yiv*_*ivi 7

当您require使用该标志的包 时--dev,该包将作为开发包安装。

当实际部署应用程序时,不应在生产中启用这些包。它们必须安装在您的开发计算机上,并且只能安装在您的开发计算机上。

如果你检查你的bundles.php文件,你会看到这一行:

Symfony\Bundle\MakerBundle\MakerBundle::class    => ['dev' => true],
Run Code Online (Sandbox Code Playgroud)

APP_ENV这可确保仅当变量设置为 时才启用捆绑包dev

由于您在生产模式下运行应用程序,因此未启用该捆绑包。

只需将您的更改APP_ENVdev启用该包,您就可以运行make命令。