创建路由
Route::get('test','VerController@index');
Route::post('tosubmit','VerController@tosubmit');
在控制器中编辑代码
class VerController extends Controller
{
//表单页面
public function index()
{
return view('from.from');
}
//表单提交验证
//这种是用自带的Request进行验证
// public function tosubmit(Request $request)
// {
// $this->validate($request, [
// 'title'=>'required',
// 'content'=>'required|min:10'
// ]);
// return 'success';
// }
//这种是用自己写的Request,用php artisan make:request FromRequest生成
public function tosubmit(Requests\FromRequest $request)
{
return 'success';
}
}
FromRequest
public function authorize()
{
//别问为什么,就是要返回true
return true;
}
public function rules()
{
return [
//这里写规则
'title'=>'required',
'content'=>'required|min:10'
];
}
自定义错误信息(设置成中文)
把en文件夹复制一份重命名为cn
然后在/config/app.php下修改
第二种:
直接在Controller里面定义规则和错误信息
public function yanzhen()
{
$input = Input::except('_token');
$relus = [
//规则
'name'=>'required|min:5'
];
$message = [
//错误信息
'name.required' => '不能为空',
'name.min' => '最少5个字符'
];
//这里参数必须按照顺序(验证的内容,规则,错误信息)
$vail = Validator::make($input,$relus,$message);
if ($vail->passes()){
return '通过验证';
} else {
//这里传入的是变量
return back()->withErrors($vail);
}
}
View:
<body>
<div class="container">
@if(count($errors)>0)
@if(is_object($errors))
{{--这里一定要获取$error->all()--}}
@foreach($errors->all() as $error)
{{ $error }}
@endforeach
@endif
@endif
{{ Form::open(['url'=>url("yanzhen")]) }}
{{ Form::text('name') }}
{{ Form::submit('提交') }}
{{ Form::close() }}
</div>
</body>