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