我有一个父配置规范
GenericDatabaseAdapterConfiguration implements ConfigurationInterface
它有一些默认值——主机、用户和密码。然后有孩子有他们特定的配置选项。
MySQLDatabaseAdapterConfiguration extends GenericDatabaseAdapterConfiguration
它有charset
选项,MSSQLDatabaseAdapterConfiguration
没有。
什么是改变TreeBuilder
从GenericDatabaseAdapterConfiguration::getConfigTreeBuilder()
. 理想情况下,我想要类似的东西parent::getConfigTreeBuilder()->appendTo('parameters', $mssqlCustomSettingsNode);
,但那不存在。
到目前为止,我在 Generic 类中创建了扩展点。$this->append($this->getSshTunnelConnectionParametersNode())
在树内部调用,而空方法getSshTunnelConnectionParametersNode
在可以在子级中覆盖的泛型类内部。但这并不理想,因为我需要预测 Generic 类中每个可能的扩展点。
有没有更好的办法?