我正在使用以下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
仍可以获取其配置。
谢谢!
答案 0 :(得分:0)
config.yaml
除了parameters
之外定义的任何内容都需要由Extension
使用。
Extension
收到属于它的配置部分(由getAlias
方法定义)。
然后,扩展程序可以调用Configurator
,它将处理一个众所周知的"配置,你可以添加默认值等。这将返回一个配置数组。
然后,您可以在容器中设置具有此配置数组的参数。 Extension接收的容器是空的,然后与真实的容器合并,接收参数。
然后,您可以添加CompilerPass
并使用这些参数将它们绑定到您的服务。