symfony - 如何转发请求到路线名称

标签 symfony

$controller->forward(...) 

需要形式为MyBundle:Controller:action的字符串,但我只有路由名称。

如何转发请求的路线名称?

最佳答案

这个问题很古老,但是出于说明目的,对于这里的所有Google员工来说,这都是一种解决方法。

class Mycontroller extends Controller {
  public function indexAction(){
        $response = $this->forward($this->routeToControllerName('ROUTE_NAME_HERE'));
  }

  private function routeToControllerName($routename) {
    $routes = $this->get('router')->getRouteCollection();
    return $routes->get($routename)->getDefaults()['_controller'];
  }

}

关于symfony - 如何转发请求到路线名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17493670/

相关文章:

forms - Symfony2 - 一个 Action 中的多种形式

symfony - 试图从命名空间加载类 "Sm_Image_HandlerController"您是否忘记了另一个命名空间的 "use"语句?

javascript - PHP & JS - Jcrop - 选择的 PNG 图像有黑色背景

php - 是否可以将 Doctrine2 批处理与 Twig 的 for 标签无缝使用?

php - 将所有文本字段与第一个文本字段值一起单独插入 [多对一关系]

php - Symfony2 : How to use constraints on custom compound form type?

javascript - 在 symfony 应用程序中,图像不显示且脚本不运行

php 应用程序/控制台学说 :database:import returns OutOfMemoryException

php - 从数据库中获取值(value)并将其插入下拉列表 Symfony 3

php - TWIG 在原始过滤器后获取 HTML 的第一个字母