【发布时间】:2016-09-21 08:03:22
【问题描述】:
我一直在尝试使用 Symfony 3 进行树构建器配置来解析这样的配置:
my_bundle:
import:
paths:
- 'some/path'
- 'another/path'
我的 TreeBuilder 如下所示:
$rootNode
->children()
->arrayNode('import')
->children()
->arrayNode('paths')
->addDefaultsIfNotSet()
->defaultValue([])
->cannotBeEmpty()
->end()
->end()
->end()
->end();
它基本上就像我想要得到的二维数组配置。各位大神能帮我解答一下吗?
预期的解析配置:
['import' => ['paths' => ['some/path', 'another/path']]]
【问题讨论】:
-
那么你会得到什么?
-
->defaultValue() is not applicable to concrete nodes at path "my_bundle.import.paths" -
你想归档什么样的行为?为什么要同时申请
cannotBeEmpty和defaultValue([])?[]是为空。 -
cannotBeEmpty在这一点上无关紧要。它甚至可以编译为有效的配置树定义。我想要实现的是paths数组将在根数组上的import键下。
标签: php configuration symfony