如何在Symfony2中安装或集成软件包

时间:2011-09-28 15:10:30

标签: symfony

我已经下载了一个奏鸣曲管理员资料包,并已放入/var/www/Symfony/vendor/symfony/src/Symfony/Bundle,并在AppKernel.php作为$bundles = array( ... new Symfony\Bundle\SonataAdminBundle\SonataAdminBundle(),)进行了输入,但是输入错误

  

致命错误:类   找不到'Symfony \ Bundle \ SonataAdminBundle \ SonataAdminBundle'   第21行的/var/www/Symfony/app/AppKernel.php调用堆栈:0.0001   326332 1. {main}()/var/www/Symfony/web/app_dev.php:0 0.0122 1121592   2. Symfony \ Component \ HttpKernel \ Kernel-> handle()

请帮助我,因为我对symfony 2很新。请提供一个链接或详细信息,如何安装/配置下载的任何软件包。 谢谢 Ravi.M

2 个答案:

答案 0 :(得分:5)

首先,SonataAdminBundle位于Sonata命名空间,而不是Symfony。因此,您必须将app/AppKernel.php中的实例化重写为:

new Sonata\AdminBundle\SonataAdminBundle()

您还必须在app/autoload.php注册名称空间:

$loader->registerNamespaces(array(
...
'Sonata' => __DIR__.'/path/to/parent/of/Sonata/folder'
...
));

答案 1 :(得分:5)

您需要将捆绑包移至

/var/www/Symfony/vendor/bundles

然后在AppKernel.php中添加

new Sonata\AdminBundle\SonataAdminBundle(),

在$ bundles数组中。

在autoload.php中添加

'Sonata'           => __DIR__.'/../vendor/bundles',

$loader->registerNamespaces数组