zoukankan      html  css  js  c++  java
  • Laravel Route Resource 方法

    新增的 resource 方法将遵从 RESTful 架构为用户资源生成路由。该方法接收两个参数,第一个参数为资源名称,第二个参数为控制器名称。

    Route::resource('users', 'UsersController');
    

    上面代码将等同于:

    Route::get('/users', 'UsersController@index')->name('users.index');

    Route::get('/users/{user}', 'UsersController@show')->name('users.show');

    Route::get('/users/create', 'UsersController@create')->name('users.create');

    Route::post('/users', 'UsersController@store')->name('users.store');

    Route::get('/users/{user}/edit', 'UsersController@edit')->name('users.edit');

    Route::patch('/users/{user}', 'UsersController@update')->name('users.update');

    Route::delete('/users/{user}', 'UsersController@destroy')->name('users.destroy');

    可以看到使用 resource 方法让我们少写了很多代码,且严格按照了 RESTful 架构对路由进行设计。


    rosource 方法可以取设置nameonly参数只需要衍射的方法

    如下面的:

    Route::resource('users','UsersController',[
                'only' => ['index','show','update'],
                'as' => 'admin',
                //'name' => 'admin.posts'
            ]);
    

    参数说明:

    • names 是覆盖原先默认的name 部分
    Route::resource('users','UsersController',[
                'names' => [
                    'index' => 'users'
                ],
            ]);
    
    • as 参数,值是路由名称的前缀,加一个指定的前缀给当前的所有路由名称前面
    Route::resource('users','UsersController',[
                'as' => 'admin',
            ]);
    
    • only 参数,值是 resources控制器 的 方法名, index,show,update,store,destroy组成的数组,即只能访问 指定的方法
    Route::resource('users','UsersController',[
                'only' => ['index','show'],
            ]);
    

    如上面的,users的路由列表只有 indexshow

    上面的三个参数,是我目前直到的参数

    可以命令行,在项目的根目录下运行 php artisan route:list 命令,输出路由列表
    如果当前Laravel项目使用了 dingo api类库,列出所有的api路由的命令时 php artisan api:route

    Reference
    1. Laravel中resource方法
    2. Laravel define a put/patch route as the same route name
    3. Laravel named route for resource controller
  • 相关阅读:
    616无趣
    安装elasticsearch的问题
    导出PDF数据
    生活本苦,奈何年华
    分享一个sql查询重复记录
    springboot的java打印票据-4
    springboot的java打印票据-3
    springboot的java打印票据-2
    react 学习笔记
    原生可拖动表格
  • 原文地址:https://www.cnblogs.com/fsong/p/11491745.html
Copyright © 2011-2022 走看看