我试图在我的代码中使用以下规则,按照文档,但它不工作:
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|unique:users,email,:email',
];
}
返回The email has already been taken.
我想说,如果用户的电子邮件不是唯一的,然后抛出一个错误,除了当前的用户id。
我怎样才能做到这一点?
您需要为唯一规则指定一个要忽略的ID。试试这个:
return [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|unique:users,email,' . Auth::user()->id
];
注意:这里假设你使用的是Laravel的Auth类