2017-05-06 60 views
0

我有2個包MyBundle1和MyBundle2,MyBundle2繼承MyBundle1。忽略symfony包父services.yml

在/app/config/services.yml我有:

imports: - resource: '@MyBundle1/Resources/config/services.yml' - resource: '@MyBundle2/Resources/config/services.yml'

的問題是, '@ MyBundle2 /資源/配置/ services.yml' 將被視爲「@ MyBundle1 /資源/config/services.yml',因爲它繼承它,所以覆蓋它的文件。

我的問題是:如何訪問真正的'@ MyBundle2/Resources/config/services.yml',而不是重寫的?

感謝

+0

你可以嘗試不同的文件名(例如Bundle2中的'_services.yml')。 – ccKep

+0

@ccKep它會工作,但不會像我想要的那樣正確/很好/標準 –

+0

可以嘗試從'@ MyBundle2/Resources/config/services.yml'中導入'@ MyBundle1/Resources/config/services.yml' – ccKep

回答

2

Symfony cookbook解釋說,捆綁覆蓋其其父包資源文件時

  1. 他們在束
  2. 他們一直採用進口內同一位置@MyBundle/...../services.yml(中@ -part)語法。

爲了讓你的包重寫你的父母捆綁服務,您可以使用不同的文件名(如:_services.yml),或使用在你的配置的完整路徑參考。