2013-01-09 68 views
0

我正在使用動態路由構建CMS樣式的應用程序。到目前爲止,它似乎工作正常,但輸出不符合WDT,資產和鏈接的環境......它始終鏈接到/whatever而不是/app_dev.php/whateverSymfony Dev Toolbar未加載(錯誤路由)

動態路由通過kernel.request監聽器實現。相關代碼在gist。我需要在某個時刻將當前的環境傳遞給Twig嗎?

編輯:

出現問題時,在DEV模式......沒問題,當在生產模式。

+0

你是否設置了htaccess來刪除對app_dev.php的需求? – Mike

+0

爲什麼不創建一個控制器來負責模板渲染? – AdrienBrault

+0

@Mike我設置了htaccess來刪除對app.php的需求。我不明白爲什麼我應該爲app_dev.php做。 – Michi

回答

0

感謝@AdrienBrault我終於通過使用控制器來完成渲染來解決問題。

在RequestListener中,我向路由器的RouteCollection添加了一個新路由,指示將處理該請求的控制器。

$route = new Route($path, array(
      '_controller' => 'CmsBundle:Routing:routing', 
     )); 

$this->router->getRouteCollection()->add('cms', $route); 

在控制器中,這是一個有點難以得到原來的URL,但最後我通過查詢與之前的add()方法中分配的名稱路由器RouteCollection解決它。