我想为具有姓名,电子邮件,手机等等输入字段的用户制作注册表单,这样如果用户输入已经由其他用户注册的电子邮件地址,则会出现错误“电子邮件已经在使用“和其他输入字段值保持原样,在提交表单之前客户输入。
答案 0 :(得分:2)
您可以在注册表单的帖子中使用laravel验证
$validator = Validator::make($request->all(), [
'email' => 'email|unique:table_name,col_name',
],[
'email.unique' => 'email is already in used',
]);
if ($validator->fails()) {
return redirect()->back()->withInput($request->all())->withErrors($validator);
}
register.blade上的添加此内容以查看错误消息:
@if($errors->any()){{$errors->first()}}@endif
保留所有用户填充的值,在所有输入字段中使用laravel的“旧”关键字,例如:
<input type="text" name="email" value="{{ old('email') }}">
答案 1 :(得分:0)
您也可以创建请求,请参阅here。并传递像
这样的消息public function messages()
{
return [
'title.required' => 'A title is required',
'body.required' => 'A message is required',
];
}
别忘了在你的控制器中传递这个请求。