肯定是一個愚蠢的事情,但我無法從MyBundle
Symfony2的 - 我的業務沒有註冊
的src/ME/MyBundle/
$ ls -R src/Me/MyBundle/
DependencyInjection/
MeMyBundleExtension.php
Configuration.php
Resources/
config/
services.yml
Services/
MyService.php
MyBundle.php
的src/ME/MyBundle註冊MyService
/DependencyInjection/MeMyBundleExtension.php
namespace Me\MyBundle\DependencyInjection;
// standard stuff
class MeMyBundleExtension extends Extension
{
public function load(array $configs, ContainerBuilder $container)
{
// standard stuff loading the yml file
}
}
的src/ME/MyBundle/DependencyInjection /的configuration.php
namespace Me\MyBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
class Configuration implements ConfigurationInterface
{
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('my_services');
return $treeBuilder;
}
}
的src/ME/MyBundle /資源/配置/ services.yml
services:
me.myservice:
class: Me\MyBundle\Services\MyService
的src/ME/MyBundle /服務/MyService.php
namespace Me\MyBundle\Services;
class MyService
{
public function __construct()
{
die('test');
}
}
我可以看到我的服務沒有被註冊,當我嘗試instanti從CONTROLER
$test = $this->get('me.myservice');
您已請求不存在的服務 「me.myservice」
吃了有什麼問題嗎?
$ php app/console container:debug | grep me.mybundle
沒有匹配
類:調試 – rpg600
感謝名單:ME \ MyBundle \ SERVICES \ MyService.yml => MyService.php 然後用PHP應用程序/臺集裝箱檢查服務的存在。我做了錯誤的複製/粘貼,問題更新。 'php app/console container:debug | grep me.mybundle'不給我任何匹配。 –
你在你的'config.yml'和/或''config_dev.yml'中包含了'services.yml'嗎? – ferdynator