ege*_*oen 5 dependency-injection symfony
我实际上正在开发一个symfony 2包.我想允许用户使用DIC配置我的bundle而不检查bundle配置的某些部分.
例如,用户设置此配置:
root_node:
node:
key1: value1
key2: value2
key3: value3
Run Code Online (Sandbox Code Playgroud)
我的配置包就像这样设置:
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('root_node');
$rootNode
->children()
->arrayNode('node')->children()->end()
->end();
Run Code Online (Sandbox Code Playgroud)
我希望用户可以配置"node"的子节点,而不需要通过bundle配置进行检查.我不知道如何修改此问题的配置.
经过对 symfony2 github 存储库的一些研究,我找到了解决方案。对于其他想做同样事情的人来说,解决方案是:
$rootNode
->children()
->arrayNode('node')
->useAttributeAsKey('node')->prototype('scalar')->end()
->end()
->end();
Run Code Online (Sandbox Code Playgroud)