捕获学说异常Symfony2

时间:2014-04-24 15:02:55

标签: symfony doctrine-orm doctrine try-catch

我如何捕捉学说例外? 我正在尝试这里找到的代码: How to catch Exception in symfony 2? Why Symfony2 dont catch exceptions 但这不起作用。

代码:

try{

    $emOperateur->flush();                      
    return $this->redirect($request->getUri());

}catch(\Doctrine\ORM\ORMException $e){

    $this->get('session')->getFlashBag()->add('error', 'Blablablabla');
}

当我插入一个具有相同主键的元组时,它不会进入catch并且我有一个带有经典错误消息的屏幕。

2 个答案:

答案 0 :(得分:2)

在相关的说明中,您应首先检查重复主键之类的内容(您可以使用doctrine验证器),因为如果您收到一个学说异常,实体管理器将关闭,您将无法恢复从它。

答案 1 :(得分:2)

尝试捕获\ Exception

try{
    ...
 }catch(\Exception e){
    echo($e->getMessage());
 }
相关问题