zoukankan      html  css  js  c++  java
  • laravel8更新之路由调整

    原文地址:https://www.wjcms.net/archives/laravel8更新之路由调整

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

    image.png

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

    被注释掉了。

    所以在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';
    

    关注我每天分享文章。

  • 相关阅读:
    UNIT THREE
    UNIT TWO
    UNIT ONE
    实验九 根据材料编程
    实验五 编写、调试具有多个段的程序
    实验 四 [bx]和loop的使用
    实验二 用机器指令和汇编指令编程
    实验三 编程、编译、连接、跟踪
    实验一 查看CPU和内存,用机器指令和汇编指令编程
    汇编语言第5~8章知识总结
  • 原文地址:https://www.cnblogs.com/wjcms/p/13799153.html
Copyright © 2011-2022 走看看