• 技术文章 >php框架 >Laravel

    介绍Laravel8路由模块新增missing方法

    藏色散人藏色散人2021-03-19 09:01:30转载682

    下面由laravel教程栏目给大家介绍Laravel 8 路由模块新增的 missing 方法,希望对需要的朋友有所帮助!

    Laravel 8.26.0 版本及以上,在路由模块新增了一个 missing() 方法,我们在实际开发中,经常使用路由隐形绑定自动查找对应的数据,减少在 Controller 中自己编写代码。
    在之前,如果模型没有查到对应的数据,会自动跳转到全局统一的 404 页面,不够灵活。而 missing() 方法就是为了解决这个问题而来的。

    Route::get('/users/{user:slug}', [UserController::class, 'show'])
         ->name('user.view')
         ->missing(function (Request $request) {
             return Redirect::route('user.index');
         });

    当请求 missing.test/users/dalian 时,如果在用户表中查不到 slug 为 dalian 的数据,会跳转到用户列表的首页,而不是统一的 404 页面。

    注意:
    该方法只适用于路由的隐形绑定才会有效,例如在 Controller 中使用 findOrFail 方法,即使未查到指定的数据,也不会出发 missing 方法,而是会跳转到统一的 404 页面。

    以上就是介绍Laravel8路由模块新增missing方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:learnku,如有侵犯,请联系admin@php.cn删除
    专题推荐:Laravel 8
    上一篇:解决Laravel安装sail时ubuntu软件源很慢或者connection failed 下一篇:解决Laravel使用Windows docker运行php容器及mysql容器时,连不起数据库问题
    大前端线上培训班

    相关文章推荐

    • laravel-mix怎么自动压缩html模板文件• 介绍Laravel中的where高级使用方法• laravel如何去掉index.php• 介绍9个有用的Laravel Eloquent的特性• 解决Laravel安装sail时ubuntu软件源很慢或者connection failed

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网