我正在使用以下Symfony组件:
"require": {
"symfony/dependency-injection": "~3.0",
"symfony/yaml": "~3.0",
"symfony/config": "~3.0",
"symfony/console": "~3.0",
"symfony/validator": "~3.0",
"symfony/event-dispatcher": "~3.0",
"guzzlehttp/guzzle": "~6.0",
"gedex/janrain-api": "~0.1",
"monolog/monolog": "~1.0"
},
我有一个forms.yaml
和services.yaml
.服务配置文件包含有关组件要加载的服务的信息DependencyInjection
。但是表单配置文件对我的Forms
服务(使用自定义配置类)具有自定义定义。
我想知道我是否可以将services
和forms
合并为一个config.yaml
,并且仍然拥有DependencyInjection
并Forms
获得它们的配置。
谢谢!
除了parameters
之外,config.yaml
中定义的任何内容都需要由Extension
使用。
Extension
接收属于它的配置部件(由getAlias
方法定义)。
然后,扩展可以调用一个Configurator
该该将处理"众所周知"的配置,您可以添加默认值等。这将返回一个配置数组。
然后,您可以在容器中设置一个参数,并具有此配置数组。扩展接收的容器是一个空容器,然后与实际容器合并,接收参数。
然后,可以添加CompilerPass
并使用这些参数将其绑定到服务。