我需要有不同的路线指向同一个包。例如:/mkt/contacts 和 /crm/contacts 应该指向同一个联系人包。
为什么?我正在开发一个平台(一个 symfony2 项目),它有许多应用程序(营销应用程序、CRM 应用程序等等。每个应用程序都是一组模块(包),其中一些在应用程序之间共享(如 ContactsBundle)。
我需要做的是共享包的路由前缀是相对于当前应用程序的,所以如果用户在营销应用程序(/mkt/)中,那么 ContactBundle 的路由前缀应该是 /mkt/contact。但如果它在 CRM 应用程序中,它应该是 /crm/contacts
我想我可以像这样在 routing.yml 中创建两个路由资源:
route1:
resource: "@Contactundle/Resources/config/routing.yml"
prefix: /crm/contact
route2:
resource: "@ContactBundle/Resources/config/routing.yml"
prefix: /mkt/contact
最大的问题在于使用路径功能时的视图。我怎么知道路线的名称?我能想到的唯一可能的解决方案是创建一些树枝扩展来检查当前的路径信息并返回正确的路由前缀。
有更好的想法吗?