laravel5.7 表单验证
laravel5.7 表单验证
一、创建表单请求
1、找到 larave5.7 文档 验证 中的创建表单请求,这里就要用到命令:php artisan make:request BrandRequest ,BrandRequest为自定义命名,然 后生成的类,位于 app/Http/Requests 目录下,如果该目录不存在,运行了命令时会替我们生成。
2、接下来,打开该类。我们添加少许验证规则到该类的 rules 方法,不过在添加规则前,我们需要打开 authorize()方法,把里面改为true,是打开的意思。
3、添加的验证规则如下:
代码如下:
switch ($this->method()) {
case 'POST':
return [
'name' => 'required|unique:brands|max:255',
'url' => 'required|url',
'sort_order' => 'required|integer|between:0,99'
];
case 'PUT':
return [
'name' => 'required|unique:brands,name,' . $this->route('brand') . '|max:255',
'url' => 'required|url',
'sort_order' => 'required|integer|between:0,99'
];
}
二、验证如何生效
1、验证规则如何生效呢?我们需要的就是在控制器方法中类型提示该请求类。这样表单输入请求会在控制器方法被调用之前被验证,这就是说你不需要将控制器方法和 验证逻辑杂糅在一起,如下图(打框):
三、弹出框与验证提示语UI修改
验证提示UI的修改,把验证提示跟输出提示语(前两个)封装到 _flash.blade.php 模板中,为了后续用到。
然后在各要用到的模块引入这个,如下图: