【发布时间】:2015-02-21 20:39:25
【问题描述】:
我使用 Symfony2 的 ConfigurationInterface 来验证我的包中的配置。我利用了它的规范化方法,这样我自己解析配置时就不必检查值是否存在。
这种方法ignoreExtraKeys 给了我一个曲线球。文档状态:
允许在数组下指定额外的配置键而不会引发异常。 这些配置值被简单地忽略。这应该仅在您希望通过只处理部分数组的特殊树发送整个配置数组的特殊情况下使用。
这让我相信那些额外的键会保留在结果数组中。碰巧的是,他们不是。我可以为每个键定义一个规则,但这是不可能的。这个特定的配置文件定义了表单的结构、表单类型和应该传递给每种类型的选项。需要考虑的选项太多了,它会忽略自定义类型,并且 Symfony 的表单构建器已经验证了这些选项。
在我编写一个额外的方法将这些键合并回数组之前,有什么方法可以强制配置验证器将键保留在原位。
即。我希望它验证和规范化我的配置,但也忽略它不知道的键。
【问题讨论】:
标签: validation symfony configuration