Symfony2 - Manipulate request/response from the Kernel Exception Listener

后端 未结 2 1457
余生分开走
余生分开走 2021-02-06 07:22

I am building an administration panel for a website and I would like to change the view called when a 404 exception occurs but only for the admin application. <

2条回答
  •  旧时难觅i
    2021-02-06 07:39

    For some reason, this worked:

    // get exception
    $exception = $event->getException();
    
    // get path
    $path = $event->getRequest()->getPathInfo();
    
    if ($exception->getStatusCode() == 404 && strpos($path, '/admin') === 0){
    
        $templating = $this->container->get('templating');
    
        $response = new Response($templating->render('CmtAdminBundle:Exception:error404.html.twig', array(
            'exception' => $exception
        )));
    
        $event->setResponse($response);
    }
    

    Which is basically what I was doing earlier with a different syntax...

    @dmirkitanov Anyway, thanks for your help !

提交回复
热议问题