本文介绍了Laravel抓住了雄辩的口才"Unique"现场误差的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图确定由于唯一字段错误而在Laravel中由于雄辩而在雄辩中插入记录的时候.
I am trying to identify when inserting a record using eloquent in Laravel when it throws an exception because of a unique field error.
到目前为止,我的代码是:
The code I have so far is:
try {
$result = Emailreminder::create(array(
'user_id' => Auth::user()->id,
'email' => $newEmail,
'token' => $token,
));
} catch (Illuminate\Database\QueryException $e) {
return $e;
}
它引发异常,好吧,我只是不知道该怎么做才能将其标识为列重复错误?
It throws an exception OK I just don't know what to do to identify it as a column duplicate error?
谢谢
加文.
推荐答案
我假设您使用的是MySQL,其他系统可能会有所不同
首先,的错误代码重复输入是1062 .这是从异常中检索错误代码的方法:
Okay first, the error code for duplicate entry is 1062. And here's how you retrieve the error code from the exception:
catch (Illuminate\Database\QueryException $e){
$errorCode = $e->errorInfo[1];
if($errorCode == 1062){
// houston, we have a duplicate entry problem
}
}
这篇关于Laravel抓住了雄辩的口才"Unique"现场误差的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!