Symfony2 Controller 不会捕获异常
2022-08-30 16:16:18
						这是我的删除操作的路由处理程序。只要项目没有任何关联,它就可以正常工作。
public function projectDeleteAction()
{
    try {
        $request = $this->get('request');
        $my_id = $request->query->get('id');
        $em = $this->get('doctrine.orm.entity_manager');
        $item = $em->find('MyBundle:Main', $my_id);
        $em->remove($item);
        $em->flush();
        $info = $item->getName();
        $result = 0;
    }
    catch (Exception $e) {
        $info = toString($e);
        $result = -1;
    }
    return $this->render('MyBundle:Main:response.xml.twig',
            array('info' => $info, 'result' => $result ));
}
我已经解决了尝试删除具有关联的项目的错误,但是通过此过程,“刷新”正在抛出PDOException。我尝试了各种方法来捕获它,但它似乎被捕获在Symfony2中,然后它以HTTP 500错误响应。有没有办法让Symfony2不抓住它,这样我就可以处理它?这是一个使用AJAX的XML响应,所以我宁愿只发送上面的错误代码。