En suivant la documentation trouvée ici je saisis php bin/console make:entity Product
dans Terminal et l’erreur suivante:
[Symfony\Component\Console\Exception\CommandNotFoundException]
There are no commands defined in the "make" namespace.
make
est une commande de composant de doctrine. Ajoutez simplement le fabricant de doctrine.
composer require doctrine maker
https://symfony.com/doc/current/doctrine.html#installing-doctrine
essayer
composer remove maker
composer require maker --dev
et alors
php bin/console make:entity Product
https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html
prod
?Le website-skeleton
place le kit Maker dans la section require-dev
de votre composer.json
par défaut:
"require-dev": {
...
"symfony/maker-bundle": "^1.0",
...
}
Si vous avez défini APP_ENV=prod
dans votre fichier .env
et exécuté bin/console
, il ignorera toutes les exigences de dev
et ainsi n'activerait pas le générateur Maker.
Activer simplement à nouveau l'environnement dev
(APP_ENV=dev
) ferait alors l'affaire.
Vous avez besoin de Symfony 3.4 ou supérieur. Pour Symfony 3.4, vous devrez l’ajouter à la fonction registerBundles dans config/AppKernerl ():
if (in_array($this->getEnvironment(), array('dev', 'test'))) {
// [...]
$bundles[] = new \Symfony\Bundle\MakerBundle\MakerBundle();
}
Gardez à l'esprit que l'environnement où il est installé est "dev".
Si vous avez installé symfony/maker-bundle pour le mode dev, vous ne pourrez l’utiliser que pour ce mode. Si vous êtes dans mode prod puis passez en mode dev et réessayez