laravel框架——表单验证

创建路由  

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>

  

posted @ 2016-06-29 18:03  偏执Dog  阅读(2342)  评论(0编辑  收藏  举报