我正在使用动态路由构建CMS样式应用程序。到目前为止似乎工作正常,但输出不符合WDT,资产和链接的环境......它总是链接到/whatever
而不是/app_dev.php/whatever
。
动态路由是通过kernel.request监听器实现的。相关代码位于gist。我是否需要在某个时刻将当前环境传递给Twig?
修改
在DEV模式下出现问题...在生产模式下没问题。
答案 0 :(得分:0)
感谢@AdrienBrault我终于通过使用Controller来进行渲染来解决这个问题。
在RequestListener中,我添加了一条到路由器RouteCollection的新路由,指示将处理请求的控制器。
$route = new Route($path, array(
'_controller' => 'CmsBundle:Routing:routing',
));
$this->router->getRouteCollection()->add('cms', $route);
在控制器中获取原始URL有点困难,但最后我通过查询路由器RouteCollection并使用前一个add()方法中指定的名称来解决它。