Symfony2 - 在控制器中加载所有路由(无需重建缓存)

Symfony2 - Load all routes in controller (without rebuilding cache)

我正在尝试创建一个带有 ChoiceType 字段的 Symfony 表单,其中包含当前可用的所有路由。此表单的目的是将这些路由添加到我们后端的模块中。我已经创建了 ModuleRoute 实体。这些用于为使用特定模块的用户呈现正确的导航结构。

我在表单控制器中使用了 Router#getRouteCollection(),在对页面的每个请求中使用此路由 cache will be rebuild

我正在考虑一个使用这种方法并将所有路由添加到数据库的命令。然而,这意味着每次添加路由时,也需要执行此命令。对于这样一个简单的任务来说,这似乎有点过头了。

在控制器中加载这些路由的最佳做法是什么?如果没有:

是否可以做到这一点

谢谢你和我一起思考。

亲切的问候

我不确定 use-case 你需要这条路线是为了什么,但另一个问题是你可能不希望在你的路线列表中有一些路线,因为它们是例如来自探查器的路线或 AJAX 路线。因此,更好的方法可能是在数据库 table 中维护您自己的路线列表,用户可以从中做出选择。