確かにばかげたことですが、私はから登録できませMyService
んMyBundle
src/私/MyBundle/
$ ls -R src/Me/MyBundle/
DependencyInjection/
MeMyBundleExtension.php
Configuration.php
Resources/
config/
services.yml
Services/
MyService.php
MyBundle.php
src/Me/MyBundle/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/Resources/config/services.yml
services:
me.myservice:
class: Me\MyBundle\Services\MyService
src/Me/MyBundle/Services/MyService.php
namespace Me\MyBundle\Services;
class MyService
{
public function __construct()
{
die('test');
}
}
コントローラーからサービスをインスタンス化しようとすると、サービスが登録されていないことがわかります
$test = $this->get('me.myservice');
存在しないサービス「me.myservice」をリクエストしました
ここに何か問題がありますか?
$ php app/console container:debug | grep me.mybundle
一致するものはありません