InvalidArgumentException Synfomy2

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

标签: php html5 css3 symfony doctrine-orm

我试图用:

创建一个Doctrine实体
php app/console doctrine:generate:entity --entity="AWStudio:Category" --fields="name:string(255)" --no-interaction

但我不能,这回归:

  

[InvalidArgumentException] Bundle" AWStudio"不存在或未启用。也许你忘了在AppKernel.php文件的registerBundles()方法中添加它?

有我的APPKernel.php

<?php

use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;

class AppKernel extends Kernel
{
    public function __construct($environment, $debug)
    {
        date_default_timezone_set('Europe/Paris');
        parent::__construct($environment, $debug);
    }

    public function registerBundles()
    {
        $bundles = array(
            new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
            new Symfony\Bundle\SecurityBundle\SecurityBundle(),
            new Symfony\Bundle\TwigBundle\TwigBundle(),
            new Symfony\Bundle\MonologBundle\MonologBundle(),
            new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
            new Symfony\Bundle\AsseticBundle\AsseticBundle(),
            new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
            new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
            new AWStudio\AWCoreBundle\AWCoreBundle(),
            new \FOS\UserBundle\FOSUserBundle(),
            new \AWStudio\AWUserBundle\AWUserBundle(),
            new AWStudio\CKSBundle\AWStudioCKSBundle(),
            new JMS\AopBundle\JMSAopBundle(),
            new Knp\Bundle\PaginatorBundle\KnpPaginatorBundle(),
            new JMS\SecurityExtraBundle\JMSSecurityExtraBundle(),
            new FOS\JsRoutingBundle\FOSJsRoutingBundle,
            new JMS\SerializerBundle\JMSSerializerBundle(),
            new Liuggio\ExcelBundle\LiuggioExcelBundle(),
            new JMS\TwigJsBundle\JMSTwigJsBundle(),
            new RaulFraile\Bundle\LadybugBundle\RaulFraileLadybugBundle(),
            new JMS\DiExtraBundle\JMSDiExtraBundle($this),
            new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
            new \Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
            new \Fresh\Bundle\DoctrineEnumBundle\FreshDoctrineEnumBundle(),
            new Corley\MaintenanceBundle\CorleyMaintenanceBundle(),
            new Sonata\CoreBundle\SonataCoreBundle(),
            new Sonata\BlockBundle\SonataBlockBundle(),
            new Knp\Bundle\MenuBundle\KnpMenuBundle(),
            new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(),
            new Sonata\AdminBundle\SonataAdminBundle()
        );

        if (in_array($this->getEnvironment(), array('dev', 'test'))) {
            $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
            $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
            $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
        }

        return $bundles;
    }

    public function registerContainerConfiguration(LoaderInterface $loader)
    {
        $loader->load(__DIR__ . '/config/config_' . $this->getEnvironment() . '.yml');
    }
}

谢谢! :)

1 个答案:

答案 0 :(得分:0)

您需要为命令提供捆绑包的完整名称。 AWStudio实际上是您的供应商名称。

我可以看到AWStudio供应商中有三个捆绑包:AWCoreBundleAWUserBundleCKSBundle

我们假设您要在AWCoreBundle中添加您的实体,这是命令:

php app/console doctrine:generate:entity --entity="AWStudioAWUserBundle:Category" --fields="name:string(255)" --no-interaction

请注意 AWStudio 后的 AWUserBundle 捆绑名称。