【发布时间】:2018-03-20 15:58:04
【问题描述】:
我正在尝试创建一个带有 ChoiceType 字段的 Symfony 表单,该字段包含当前可用的所有路由。此表单的目的是将这些路由添加到我们后端的模块中。我已经创建了 Module 和 Route 实体。这些用于为在特定模块上工作的用户呈现正确的导航结构。
我在表单控制器中使用了Router#getRouteCollection(),在对页面的每个请求中都使用了路由cache will be rebuild。
我正在考虑使用这种方法并将所有路由添加到数据库的命令。但是,这意味着每次添加路由时,也需要执行此命令。对于这么简单的任务来说,这一步似乎太过分了。
在控制器中加载这些路由的最佳做法是什么?如果没有:
- 使用
getRouteCollection()时每次请求都重建缓存 - 每次将路线添加到集合中时执行一个额外的命令
- 创建一个使用
getRouteCollection()的控制器并将结果保存在会话、缓存等中。
感谢您与我一起思考。
亲切的问候
【问题讨论】:
标签: php symfony controller routes symfony-forms