首页 > php框架 > Laravel > 正文

有关laravel8中的路由调整

藏色散人
发布: 2022-01-31 04:00:38
转载
2784人浏览过

下面由laravel教程栏目给大家介绍laravel8更新之路由调整,希望对大家有所帮助!

在Laravel的早期版本中,RouteServiceProvider包含一个$namespace属性。该属性的值将自动添加到控制器路由定义和对actionhelper /方法的调用之前。

e7d2236d4dca3e2b0f5644ea00426e8.png

在Laravel 8.x中,默认情况下为此属性。这意味着Laravel不会自动命名空间前缀。因此,在新的Laravel 8.x应用程序中,应使用标准的PHP可调用语法定义控制器路由定义:URL::actionnull

c975c3e68d82951937fcf2cea3990e4.png

被注释掉了。

所以在laravel8中加载路由需要加上命名空间,如下。

use AppHttpControllersAdminAdminController;

Route::get('/admin', [AdminController::class, 'index']);
登录后复制

或者也可以

use AppHttpControllersAdmin;
# 注:这里第二个参数是数组
Route::get('/admin', [AdminAdminController::class, 'index']);
登录后复制

如果是资源路由,则要:

# 注意这里第二个参数是类,字符串,不要传数组
 Route::resource('/admin', AdminAdminController::class);
登录后复制

对action相关方法的调用应使用相同的可调用语法:

action([AdminAdminController::class, 'index']);

return Redirect::action([AdminAdminController::class, 'index']);
登录后复制

注意

如果您更喜欢Laravel 7.x样式控制器的路由前缀,则可以简单地将$namespace属性添加到应用程序的中RouteServiceProvider。
路径为:

app/Providers/RouteServiceProvider.php
登录后复制

找到该文件,将被注释的一行代码取消注释即可使用之前版本的自动载入命名空间的写法。29行

// protected $namespace = 'App\Http\Controllers';
登录后复制

推荐学习:《laravel视频教程

以上就是有关laravel8中的路由调整的详细内容,更多请关注php中文网其它相关文章!

路由优化大师
路由优化大师

路由优化大师是一款及简单的路由器设置管理软件,其主要功能是一键设置优化路由、屏广告、防蹭网、路由器全面检测及高级设置等,有需要的小伙伴快来保存下载体验吧!

下载
来源:segmentfault网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号