我想制作一个捆绑包,我希望其他捆绑包通过覆盖功能或添加到它来扩展。SYmfony 支持开箱即用(http://symfony.com/doc/2.0/cookbook/bundles/inheritance.html)但是如果多个包试图覆盖同一个控制器会发生什么。它是否具有类似链的效果,即每个捆绑包都在其之前获得捆绑包的响应,或者仅注意到扩展功能的最后一个捆绑包?如果是后者,symfony 有没有办法允许链式方法?
问问题
202 次
1 回答
0
我认为您对“覆盖”的工作方式感到困惑。当您扩展一个类时,您可以通过创建具有相同名称的方法来“覆盖”基类中的方法,但实际上您并没有以任何方式影响基类,因此多个类可以扩展同一个基类而无需与彼此。
在 Symfony2 中,从多个不同的包中扩展一个基本控制器是绝对没问题的。在这个基类中定义的任何方法都将在您用来扩展它的类中可用。根据您对此的需求,您可能还希望研究可以定义为允许在应用程序中全局访问方法的服务。
于 2013-03-19T16:50:56.750 回答