我有两个包A和B. A是B的父包'A'有AController,带有3个参数的构造方法,定义为服务.
然后我在Bundle'B'中有BController,它扩展了Acontroller.我需要调用B控制器的方法.我也为BController做过服务.但问题是它在__construct中丢失参数1会引发错误.
有什么我错过了.
Class AController{
public function __construct(A,B,C)
{
.......
}
}
Run Code Online (Sandbox Code Playgroud)
为Acontroller服务
controller_A:
class: A\Bundle\ABundle\Controller\AController
arguments:
- @A
- "%a.config%"
- @form.factory
Run Code Online (Sandbox Code Playgroud)
对于捆绑B.
Class BController extends Acontroller{
.....
}
Run Code Online (Sandbox Code Playgroud)
为Bcontroller服务
controller_B:
class: B\Bundle\BBundle\Controller\BController
arguments:
- @B
- "%B.config%"
- @form.factory
Run Code Online (Sandbox Code Playgroud)
这看起来像是一个路由问题。您是否设置了类似以下内容:
/**
* @Route(service="your_bundle.b_controller")
*/
class BController extends Acontroller{
Run Code Online (Sandbox Code Playgroud)
此处的说明: http: //symfony.com/doc/current/bundles/SensioFrameworkExtraBundle/annotations/routing.html#controller-as-service
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |