我试图看看如何将前缀放在路由路径中。可能在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
中的所有路由指定前缀(一捆一个路由文件) –