我試圖看看如何將前綴放在路由路徑中。可能在symfony中的路由路徑中使用前綴或const
#routing.yml
app_news:
path: /panel/news
defaults: { _controller: NewsBundle:Default:index }
我有一些像這樣的路線,如果我想在未來改變的路徑名稱,例如
/管理/新聞或/控制/新聞
我可以在其他配置yml文件中保存前綴並在需要時更改它嗎?
我試圖看看如何將前綴放在路由路徑中。可能在symfony中的路由路徑中使用前綴或const
#routing.yml
app_news:
path: /panel/news
defaults: { _controller: NewsBundle:Default:index }
我有一些像這樣的路線,如果我想在未來改變的路徑名稱,例如
/管理/新聞或/控制/新聞
我可以在其他配置yml文件中保存前綴並在需要時更改它嗎?
在這種情況下,我有一些像這樣的
#/app/config/routing.yml
users:
resource: "@UsersBundle/Resources/config/routing.yml"
prefix: /panel/
news:
resource: "@NewsBundle/Resources/config/routing.yml"
prefix: /panel/
現在,閱讀後的答案,看看其他人的方式,我把前綴,我設置了前綴的VAR
#/app/config/routing.yml
users:
resource: "@UsersBundle/Resources/config/routing.yml"
prefix: %panel_path%
news:
resource: "@NewsBundle/Resources/config/routing.yml"
prefix: %panel_path%
而且我將%panel_path%var值設置爲
#/app/config/config.yml
parameters:
panel_path: /panel
儘管這可能會起作用,但我強烈建議您使用Symfony工具而不是自我實現。這將使項目更加可維護。 –
把你所有的前綴路線上相同的路由文件,然後將其添加到使用資源和前綴屬性你的包路由:
applications:
resource: "@NewsBundle/Resources/config/routing_news.yml"
prefix: /panel
另外,如果你對你的路線你的控制器。您可以使用註釋屬性做同樣的伎倆:
applications:
resource: '@NewsBundle/Controller/NewsController'
type: annotation
prefix: /panel
大成取決於你的Symfony的版本發生變化,所以我建議您訪問Symfony documentation。
這是一個包或應用程序的路由文件嗎? – Matteo
您可以爲路徑文件中的[文檔中的此處](http://symfony.com/doc/current/routing/external_resources.html#prefixing-imported-routes) – Matteo
中的所有路由指定前綴(一捆一個路由文件) –