我发现很难在不创建请求类的情况下设置自定义验证消息。这就是为什么我在解释它以便更好地理解。
laravel的默认验证:
public function store(Request $request)
{
$this->validate($request, [
'name' => 'required|unique:categories',
]);
$input = $request->all();
Category::create($input);
Session::flash('create_category','Category created successfully');
return redirect('admin/categories');
}
它将显示laravel的默认消息。在本问答部分中,我将展示如何借助laravel文档解决该问题。您可以在laravel文档中找到执行此操作的其他方法。
您只需将三个值传递给validate
参数。
$request
$rules
$message
public function store(Request $request)
{
$rules = ['name'=>'required|unique:categories'];
$message = [
'name.required' => 'The category name is required',
'name.unique' => 'Category name should be unique'
];
$this->validate($request, $rules, $message);
$input = $request->all();
Category::create($input);
Session::flash('create_category','Category created successfully');
return redirect('admin/categories');
}
我发现这是进行自定义验证而不创建请求类的最明智的方法。如果您输入的字段很少,并且您想在控制器中进行验证,则可以通过这种方式进行验证。
谢谢阅读。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句