Symfony 2 - 从另一个控制器调用控制器

shm*_*lki 4 php controller symfony

我想在我的控制器中使用来自另一个bundle的控制器方法.

方法this-> forward需要一个Response对象,我不知道如何使用它.

public function indexAction($name)
{
$response = $this->forward('AcmeHelloBundle:Hello:fancy', array(
    'name'  => $name,
    'color' => 'green',
));

// ... further modify the response or return it directly

return $response;
}
Run Code Online (Sandbox Code Playgroud)

我看到我可以使用服务,但我想知道它是最好的解决方案还是另一种解决方案.

Apu*_*pta 6

$this->forward 按此顺序接受参数:

  1. 字符串格式的控制器操作的逻辑名称,即'AcmeHelloBundle:Hello:fancy'
  2. 以数组格式作为请求变量传递的参数,即array('name'=> $ name,'color'=>'green',)

可以使用请求访问功能在控制器中访问这些参数.