基本路由
1.简单路由定义
最简单的路由定义,默认情况下控制器是APP\Http\Controller下的
Route::get('/url','控制器@方法')
#在上面的代码中,为GET方法传递了2个参数,第一个参数指明了URL,第二个参数指明了处理该URL的控制器动作。
get表明了这个路由将会响应GET请求,并将请求映射到指定控制器的动作上。例如向sample.test发送请求。
该请求将会由StaticPagesController的home方法进行处理。
- GET常用于页面读取
- POST常用于数据提交
- PATCH常用于数据更新
- DELETE常用于数据删除
Laravel遵循RESTful架构设计,Route::resource(),后续再补
2.路由别名
在路由上定义别名
Route::get('/help','Controller@help')->name('help')
可在视图中使用@blade
中使用route()
生成完整的URL
<a href="{{route('help')}}" ></a> #对应上方的路由
3.Resource–(RESTful)架构
Laravel遵从RESTful架构的设计原则,将数据看做一个资源,由URI来指定资源。对资源进行获取、创建、修改和删除操作。分别对应HTTP协议提供的GET、POST、PATCH、DELETE方法。当我们要看id为1的用户时,需要向/users/1
地址发送一个GET请求,当lara的路由接收到该请求时,默认会把该请求传给控制器的show
方法进行处理。
Larave提供了resource
方法来定义用户资源路由。
该方法接收两个参数,第一个参数为资源名
,第二个参数为控制器名称
Route::resource('users','UserController')
上面的代码等同于
//视图:获取所有用户数据列表index
Route::get('users','UsersController@index')->name('users.index');
//视图:提交数据的视图create
Route::get('users/create','UsersController@create')->name('users.create');
//视图:显示用户的个人信息show
Route::get('users/{user}','UsersController@show')->name('users.show');
//行为:提交用户注册信息的行为store
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/{users}','UserController@delete')->name('users.delete');
HTTP请求 | URL | 动作 | 作用 | 行为 |
---|---|---|---|---|
GET | /users | UsersController@index | 显示所有用户列表的页面 | 索引 |
GET | /users/{user} | UsersController@show | 显示用户的个人信息 | 显示 |
GET | /users/create | UsersController@create | 创建用户的视图 | 创建 |
POST | /users | UserController@store | 创建用户(行为) | 保存 |
GET | /users/{user}/edit | UserController@edit | 用户编辑资料视图 | 编辑 |
PATCH | /users/{user} | UserController@update | 更新用户资料 | 更新 |
DELETE | /users/{user} | UserController@delete | 删除用户 | 删除 |
关于RESTful
相关参考