Symfony为扩展某个控制器的所有控制器设置基本路由

时间:2019-07-12 07:54:30

标签: symfony routing routes symfony4

假设在Symfony中您有一个BackendController

然后所有后端控制器都遵循ProjectsController extends BackendController

是否可以设置Symfony,以便所有将BackendController扩展到somesite.com/auth的控制器

那样

class ProjectsController extends BackendController
{

    /**
     * @Route("projects");
     */
    public function index()  {

路由projects解析为auth/projects,而不必明确声明@Route("auth/projects");

请保持温柔;我是Symfony的新手。

1 个答案:

答案 0 :(得分:3)

不继承类级别的路由定义,这意味着不可能。接下来要做的最好的事情是为所有继承基类的控制器在类级别上分别定义该基路由:

/**                                                                             
 * @Route("/auth")
 */
class ProjectsController extends BackendController
{
    /**
     * @Route("/projects");
     */
    public function index()  {
        ...
    }

    ...
}