Symfony:基于url加载特定配置
我有一个标准的Symfony 2.2项目和我自己的小软件包。 我有一条路线,说我有一个Symfony:基于url加载特定配置,url,symfony,configuration,parameters,Url,Symfony,Configuration,Parameters,我有一个标准的Symfony 2.2项目和我自己的小软件包。 我有一条路线,说我有一个/{customer},我可以在控制器中阅读customer很好,到目前为止还不错 但是,我还想加载一个名为config_{customer}.yml的配置,我该怎么做?您可以在与给定主机匹配时加载特定的捆绑包。然后,该捆绑包将加载其services.yml文件 # app/config/routing.yml acme_hello: resource: "@AcmeHelloBundle/Resour
/{customer}
,我可以在控制器中阅读customer
很好,到目前为止还不错
但是,我还想加载一个名为
config_{customer}.yml的配置,我该怎么做?您可以在与给定主机匹配时加载特定的捆绑包。然后,该捆绑包将加载其services.yml
文件
# app/config/routing.yml
acme_hello:
resource: "@AcmeHelloBundle/Resources/config/routing.yml"
host: "hello.example.com"
您的捆绑包的服务文件:
# src/Acme/HelloBundle/Resources/config/services.yml
acme_hello:
param: value
有关更多信息,请参阅以下URL。
您是否需要将此配置注入任何服务.yml
?我的意思是,可以通过%参数%
调用吗?这些参数将用于何处?这个问题有很多答案,但我认为你走错了方向。我假设您正在将config{customer}
放在app/config/
目录中。这些配置确定如何编译容器。路由的customer参数在编译后才可用,因此这种更改环境的方法永远不会起作用。但是,您可以在编译后修改服务,这将起作用,并且您可以将配置文件加载到执行此操作的服务中。