2016-09-15 20 views
0

我建立了一个bundle,它通过Configuration.php和配置三生成器定义了一些选项,它位于bundle中。Symfony2:Bundle配置在容器中不可用

我想把配置到/root/app/config/config.yml文件,但都具有的配置通过

$config = $container->getParameter('namespace'); 

可捆里面到目前为止,我可以看到的配置是通过

bin/console debug:config namespace 

可用,但如果我通过让束代码的内部结构

$config = $container->getParameter('namespace'); 

引发异常:“参数”名称空间“必须定义”它是,但异常告诉我,否则。

我目前的configuration.php:

class NamespaceExtension extends Extension 
{ 
    /** 
    * {@inheritdoc} 
    */ 
    public function load(array $configs, ContainerBuilder $container) 
    { 
     $configuration = new Configuration(); 
     $config = $this->processConfiguration($configuration, $configs); 

     $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); 
     $loader->load('services.yml'); 
    } 
} 

我缺少什么吗?

回答

1

您误解了配置和参数。如果要通过参数访问您的配置,则应根据您的配置设置参数:

$container->setParameter('namespace', $config['namespace']);