• 福州率先出台人才共有产权住房政策 工作满12年可获完全产权 2019-08-21
  • 领克02:锁好车门,总想回头多看你一眼 2019-07-12
  • 雄安新区公布非法集资举报电话:最高奖励15000元 2019-07-12
  • 石家庄、定州大沙河惊现3公里“垃圾带” 2019-07-09
  • 儿童掉进冰窟 小伙用双手砸出“生命通道” 2019-07-09
  • 中国丹寨少年亮相世界杯揭幕战 2019-07-08
  • 拉萨市海拔4300米以下再无“无树村 无树户” 2019-07-08
  • 618独特风景:新品密集上苏宁 这次迎来比佛利 2019-06-22
  • 北京:推租赁型集体宿舍  每房间最多住8人 2019-06-22
  • 0712-2888027 189-8648-0214
    微信公众号

    孝感风信网络科技有限公司微信公众号

    当前位置: 里昂队徽 > 技术支持 > PHP > Laravel跳转回之前页面,并携带错误信息back()->withErrors(['错了'])

    Laravel跳转回之前页面,并携带错误信息back()->withErrors(['错了'])

    时间:2019-01-10来源:风信网 点击:
    用Laravel5.1开发项目的时候,经常碰到需要携带错误信息到上一个页面,开发web后台的时候尤其强烈。
     
    方法一:跳转到指定路由,并携带错误信息
     
    return redirect('/admin/resource/showAddResourceView/' . $customer_id)
        ->withErrors(['此授权码已过期,请重新生成!']);
     
    方法二:跳转到上个页面,并携带错误信息
     
    return back()->withErrors(['此激活码已与该用户绑定过!']);
     
    方法三:validate验证(这种情况应该是最多的)
     
    我们在提交表单的时候,进入控制器的第一步就是验证输入的参数符不符合我们的要求,如果不符合,就直接带着输入、错误信息返回到上一个页面,这个是框架自动完成的。具体例子:
     
    $rules = [
        'user_name' => 'unique:customer|min:4|max:255',
        'email' => 'email|min:5|max:64|required_without:user_name',
        'customer_type' => 'required|integer',
    ];
    $messages = [
        'user_name.unique' => '用户名已存在!',
        'user_name.max' => '用户名长度应小于255个字符!',
        'email.required_without' => '邮箱或者用户名必须至少填写一个!',
        'customer_type.required' => '用户类型必填!',
    ];
    $this->validate($request, $rules, $messages);
     
    然后在视图里面引入公共的错误信息:
     
    D:\phpStudy\WWW\xxx\resources\views\admin\error.blade.php
     
    <div class="form-group">
        @if (count($errors) > 0)
            <div class="alert alert-danger">
                <ul style="color:red;">
                @foreach ($errors->all() as $error)
                    <li>{{ $error }}</li>
                @endforeach
                </ul>
            </div>
        @endif
    </div>
     
     
    例如:
     
    @extends('admin.master')
    @section('css')
    @parent
    <link href="{{ asset('css/plugins/iCheck/custom.css') }}" rel="stylesheet">
    @endsection
    @section('content')
    {{-- {{dd($data)}} --}}
    <div class="wrapper wrapper-content animated fadeInRight">
    @include('admin.error')
     
    如果还需要自定义错误信息,并且把之前传过来的值返回到上一个视图,还需要加个withInput;
     
    if (empty($res)) {
        return back()->withErrors(['查不到这个用户,请检查!'])->withInput();
    }
     
    实际展示效果如下:
    Laravel跳转回之前页面,并携带错误信息back()->withErrors(['错了'])
     
    栏目列表
    推荐内容
    热点内容
    展开
  • 福州率先出台人才共有产权住房政策 工作满12年可获完全产权 2019-08-21
  • 领克02:锁好车门,总想回头多看你一眼 2019-07-12
  • 雄安新区公布非法集资举报电话:最高奖励15000元 2019-07-12
  • 石家庄、定州大沙河惊现3公里“垃圾带” 2019-07-09
  • 儿童掉进冰窟 小伙用双手砸出“生命通道” 2019-07-09
  • 中国丹寨少年亮相世界杯揭幕战 2019-07-08
  • 拉萨市海拔4300米以下再无“无树村 无树户” 2019-07-08
  • 618独特风景:新品密集上苏宁 这次迎来比佛利 2019-06-22
  • 北京:推租赁型集体宿舍  每房间最多住8人 2019-06-22
  • 三分赛从哪里查 vr赛车座椅 佰萬彩票下载 贵州十一选五开奖结果密迷 辽宁体彩11选择5 pk10五码循环不死模式 内蒙古十一选五走势图 49选七的走势图 pk10开奖直播历史 cmd体育官网 江西时时中奖领不到 中国体育彩票开奖结果 球探网足球捷报比分 正规彩票网 云南彩票开奖号码 北京时时官网平台