Symfony:覆盖/添加继承bundle的路由

时间:2015-08-28 00:00:14

标签: symfony inheritance routing routes bundle

假设我有一些网站分享了大约80%的功能,包括路由策略,模板等。 我想为它们使用相同的代码库,并有一个“DefaultSiteBundle”,以及几个“SiteABundle”,“SiteBBundle”使用bundle继承覆盖或添加DefaultSiteBundle的功能。

这意味着,应始终加载DefaultSiteBundle,并根据域名有条件地加载SiteABundle或SiteBBundle。

我的问题是,如何在不将所有SiteBundle添加到app / config / routing.yml的情况下管理路由?

1 个答案:

答案 0 :(得分:1)

我最终解决它的方式是使用自定义路由器,基于symfony docs中解释的Advanced loader。路由器加载并合并来自两个捆绑包的路由。 为每个站点创建单独的缓存也很重要(在AppKernel中覆盖“getCacheDir”,因此它为每个域返回不同的路径)