2012-01-18 58 views
1

我有關於Symfony 2服務容器的問題。我可以通過服務配置通過注入將其他服務的參數導入到我的服務中嗎?例如:Symfony 2,服務容器,導入參數

在services.yml在我的包我想從應用AsseticBundle參數/配置/ config.yml:

#src/MyBundle/Resources/config/config.yml 
    ... 
    arguments: [@service_container, %assetic%] 

AsseticBundle參數,我需要在我的服務類結構來獲得:

#app/config/config.yml 
    assetic: 
    debug:   %kernel.debug% 
    use_controller: false 
    java: /usr/bin/java 
    filters: 
     cssrewrite: ~ 

也許有人找到解決方案,可以幫助我呢?

最好的問候,

亞歷克斯B.

回答

1

將這樣的事情對你的工作?

arguments: [@service_container, %assetic.debug%, %assetic.use_controller%, ...] 
+0

嗨,努諾。我測試了它,但它僅適用於assetic.debug和assetic.use_controller,但對於assetic.filters或twig.debug或swiftmailer.transport以及其他參數不起作用。我會檢查,DIC如何導入參數並在稍後寫入。謝謝! – Alex 2012-01-19 06:30:09

+0

也許這個關於symfony2中的語義配置的文檔可以幫助你http://symfony.com/doc/2.0/cookbook/bundles/extension.html – 2012-01-26 08:27:13

+0

你不應該在服務中注入'service_container'。在你的例子中,你應該只注入你需要的服務。請參閱http://symfony.com/doc/current/components/dependency_injection.html中的「避免您的代碼取決於容器」部分。 – Tsounabe 2016-10-27 15:38:36