2011-07-02 46 views
5

我實際上正在開發一個symfony 2包。我希望允許用戶使用DIC配置我的包,而不檢查包配置的某些部分。SF2:允許用戶配置包而不檢查包配置的某些部分

例如,用戶設置此配置:

root_node: 
    node: 
     key1: value1 
     key2: value2 
     key3: value3 

而且我的配置包設置這樣的:

$treeBuilder = new TreeBuilder(); 
$rootNode = $treeBuilder->root('root_node'); 

$rootNode 
    ->children() 
     ->arrayNode('node')->children()->end() 
    ->end(); 

我想孩子們「節點」的節點可以通過配置用戶未經捆綁配置檢查。我不知道如何修改這個問題的配置。

回答

3

經過在symfony2 github倉庫上的一些研究,我找到了解決方案。對於想要做同樣事情的其他人,解決方案是:

$rootNode 
    ->children() 
     ->arrayNode('node') 
      ->useAttributeAsKey('node')->prototype('scalar')->end() 
     ->end() 
    ->end();