Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何:在对象保存时唯一索引失败时显示自定义错误消息_Database_Symfony1_Doctrine_Unique Constraint_Symfony Forms - Fatal编程技术网

Database 如何:在对象保存时唯一索引失败时显示自定义错误消息

Database 如何:在对象保存时唯一索引失败时显示自定义错误消息,database,symfony1,doctrine,unique-constraint,symfony-forms,Database,Symfony1,Doctrine,Unique Constraint,Symfony Forms,我在表上添加了一个索引,只是为了确保一组字段一起形成一个复合唯一键(这种方法正确吗?或者有更好的方法吗?) 完成此操作后,当我尝试保存一个对象而唯一约束失败时,将生成一个SQL异常。处理这个问题的最佳方法是什么?和显示自定义错误消息 我的作业 检查来自MySQL的异常代码并处理它。但如果存在多个这样的约束,我们就无法确定确切的约束 在模式上添加一个postValidator,并在其中写入逻辑 有第三种/更好的方法吗 谢谢 或者,您可以使用doctrine的内置验证…如前所述,并经Zolex确认,

我在表上添加了一个索引,只是为了确保一组字段一起形成一个复合唯一键(这种方法正确吗?或者有更好的方法吗?)

完成此操作后,当我尝试保存一个对象而唯一约束失败时,将生成一个SQL异常。处理这个问题的最佳方法是什么?和显示自定义错误消息

我的作业

  • 检查来自MySQL的异常代码并处理它。但如果存在多个这样的约束,我们就无法确定确切的约束

  • 在模式上添加一个postValidator,并在其中写入逻辑

  • 有第三种/更好的方法吗

    谢谢


    或者,您可以使用doctrine的内置验证…

    如前所述,并经Zolex确认,最好的方法是编写后验证程序

    try {
    
        $model->save();
    
    // maybe be more precise to catch only that special exception you described
    } catch (Doctrine_Exception $e) { 
    
       $e->setMessage('my error message');
       throw $e;
    }