Symfony2:动态路由前缀

时间:2012-07-09 15:04:55

标签: php symfony

我需要创建一个动态路由方案,我在路由前面添加一个变化的变量。

以下是一个例子:

Application Base Route:/ dashboard /

场景A:/ client_a / dashboard /
场景B:/ client_b / dashboard /
场景C:/ client_c / dashboard /

我们的想法是保持应用程序核心代码完全相同,但允许在路由中引用不同的客户端。

设置此选项的最佳做法是什么?我可以在routing.yml中添加静态前缀,但除非可以动态设置“prefix: /myparameter”,否则这可能对我不起作用。主要原因是现有的Symfony2应用程序非常复杂。

如果我使用/{client_name}/dashboard/,我将不得不更改应用程序中的所有路径,因为现在路由中缺少其他参数。所以,我正在寻找一种解决方案,允许我在不必触及应用程序主代码的情况下改进现有应用程序。

谢谢,

JB

1 个答案:

答案 0 :(得分:0)

@ Jakub的评论基本上是正确的。但是,如果在我的情况下,现有的Symfony应用程序必须针对这一新要求进行改装,那么这非常繁琐。 Symfony中的安全实现还存在一个问题,即Symfony需要login,login_check和logout方法的静态路径。因此,目前似乎不支持在这些场景中使用前缀。