使用request的方式
E:\Laravel\blog>php artisan make:request ArticleRequest
在app/http/request下生成ArticleRequest.php修改如下
<?php
namespace App\Http\Requests;
use App\Http\Requests\Request;
class ArticleRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
//
"name"=>"required",
];
}
}
rules 为验证规则
authorize 要返回true
{!! Form::open(["url"=>"/site/store"]) !!}
{!! Form::text("name","aa",["class"=>"form-controller","id"=>"t"]) !!}
{!! Form::submit() !!}
{!! Form::close() !!}
{{--{{$errors}}--}}
{{--{!! $errors !!}--}}
//用于显示验证不通过的错误信息
@if($errors->any())
@foreach($errors->all() as $err)
{!! $err !!}
@endforeach
@endif
控制器只需要Requests\ArticleRequest 参数类型用上面的request即可
public function store(Requests\ArticleRequest $req){
dd("fdsaf");
}
验证通过后执行方法,不通过重定向表单页面
使用validate的方式
控制器参数正常 的request
validate 第二个参数与上面的rules相同
public function store(Request $req){
$this->validate($req,["name"=>"required"]);
dd("fdsaf");
}
中文问题
config/app.php
locale 改成中文
'locale' => 'zh',
将项目中resources/lang/en 文件夹,复制一份改成zh
对应着修改成中文
如字段必面修改
resources/lang/zh/validation.php中的
'required' => 'The :attribute field 必须.',