2016-01-24 58 views
5

我試圖開始使用symfony3,同時玩弄一些控制器和路由時,我面臨的問題是,每次加載特定路由時,控制器類上的任何進一步更改都無法被symfony識別直到我清除路由緩存。在symfony中禁用路由緩存

例如:

創建LuckyController

創建numberAction

測試它。

創建numbers2Action

現在對於numbers2Action路線心不是發現,直到我做一個控制檯高速緩存之後:明確

這似乎對測試/開發很煩人。我搜索了爲dev環境禁用緩存的可能性,但沒有找到解決方案。 (例如,嘗試/// kernel-> loadClassCache();在app_dev.php中,但這不適用於我)

是否有辦法禁用路由緩存(或解決此問題的其他方式) ?

感謝

編輯:我使用app_dev.php

回答

2

有自帶的symfony的標準,你可以用,當你正在開發或調試應用程序特定的研究與開發環境:app_dev.php。您可以使用app.php進行生產。

+0

我使用app_dev.php,但symfony仍然使用路由緩存。 – Invis00

+0

我確定它的確如此,但在'debug'模式下,元數據是通過配置文件和控制器的所有路徑生成的,該路徑使用創建路由時所使用的註釋。如果您修改其中一個文件,路由器將重新生成。你是否用'$ kernel = new AppKernel('dev',false)''禁用了這個行爲? – Federkun

+0

不,它仍然是$ kernel = new AppKernel('dev',true); – Invis00