【发布时间】:2018-01-13 20:27:27
【问题描述】:
我正在使用 Symfony 3.2.9 创建一个应用程序,我想做一个管理面板来管理应用程序。应用程序像 CMS 一样工作,因此使用 URL 创建新页面,如 domain.com/pagename1 和 domain.com/pagename1/subpagelevel2 等。问题是当我想为管理面板创建 URL 时,URL 应该看起来像:domain.com/admin,但管理面板也需要一些子页面,比如 domain.com/admin/manage 或 domain.com/admin/manage/编辑/1 等。
我使用如下路由创建了 DefaultController:
/**
* @Route("/", name="homepage")
*/
和带有路由的 AdminController 如下:
/**
* @Route("/admin", name="admin")
*/
问题是当我想动态创建应用程序的新子页面时,我需要创建如下路由:
/**
* @Route("/{page}")
*/
但这会覆盖我的管理面板子页面(例如 domain.com/admin/manage)。
是否可以通过 AdminController 从默认的 DefaultController 中排除或覆盖路径?我希望能够从 DefaultController 创建所有 URL-s,但以 domain.com/admin ... 等开头的路径除外。
【问题讨论】:
标签: php symfony model-view-controller routes symfony-3.2