在Laravel的宁静路线5.4

时间:2017-12-31 10:25:16

标签: laravel-5 routes

我使用的是Laravel 5.2 这就是我写named routes

的方式
Route::group( [ 'prefix' => 'admin' ], function () {
Route::resource( 'about', 'AboutController', [ 'as' => 'about' ] );
} );

然后这就是我称之为路线about.admin.about.update的方式 现在在Laravel 5.4中它是相同的路线

Route::group( [ 'prefix' => 'admin' ], function () {
Route::resource( 'about', 'AboutController', [ 'as' => 'about' ] );
} );

但是当我调用它about.admin.about.update时,它没有定义路由。 我在named routes中理解的另一件事我可以像about.admin.create

那样调用路线

更新 查看命令route:list

|        | GET|HEAD  | admin/about                                          | about.about.index                                 | App\Http\Controllers\AboutController@index                                    | web                      |
|        | POST      | admin/about                                          | about.about.store                                 | App\Http\Controllers\AboutController@store                                    | web                      |
|        | GET|HEAD  | admin/about/create                                   | about.about.create                                | App\Http\Controllers\AboutController@create                                   | web                      |
|        | PUT|PATCH | admin/about/{about}                                  | about.about.update                                | App\Http\Controllers\AboutController@update                                   | web                      |
|        | GET|HEAD  | admin/about/{about}                                  | about.about.show                                  | App\Http\Controllers\AboutController@show                                     | web                      |
|        | DELETE    | admin/about/{about}                                  | about.about.destroy                               | App\Http\Controllers\AboutController@destroy                                  | web                      |

为什么名称为about.about.create不应该是about.create

请对此进行任何澄清

1 个答案:

答案 0 :(得分:0)

原因是当您指定“as”参数时,您正在为资源路由about添加前缀about。离开时应该能满足您的需求:

Route::resource('about', 'AboutController');

这会为您提供路线about.*。如果您希望admin.about.*将“as”参数添加到组中(不要忘记在“as”参数中包含尾随句点):

Route::group(['prefix' => 'admin', 'as' => 'admin.'], function () {
    Route::resource('about', 'AboutController');
});