资源路由
5.0支持设置RESTFul请求的资源路由,方式如下:
Route::resource('blog','index/blog'); //通过Route类调用resource方法,定义的路由规则,指向哪一个模块的控制器
或者在路由配置文件中使用__rest__添加资源路由定义:
return [// 定义资源路由'__rest__'=>[// 指向index模块的blog控制器'blog'=>'index/blog',],// 定义普通路由'hello/:id'=>'index/hello',]
设置后会自动注册7个路由规则,如下:
| 标识 | 请求类型 | 生成路由规则 | 对应操作方法(默认) |
|---|---|---|---|
| index | GET | blog |
index |
| create | GET | blog/create |
create |
| save | POST | blog |
save |
| read | GET | blog/:id |
read |
| edit | GET | blog/:id/edit |
edit |
| update | PUT | blog/:id |
update |
| delete | DELETE | blog/:id |
delete |
具体指向的控制器由路由地址决定,例如上面的设置,会对应index模块的blog控制器,你只需要为Blog控制器创建以上对应的操作方法就可以支持下面的URL访问:
http://serverName/blog/http://serverName/blog/128http://serverName/blog/28/edit
Blog控制器中的对应方法如下:
namespace app\index\controller;class Blog {public function index(){}public function read($id){}public function edit($id){}}
在建立一个新的类Blog.php
快捷路由
快捷路由允许你快速给控制器注册路由,并且针对不同的请求类型可以设置方法前缀,如
//给User控制器设置快捷路由
Route::controller( 'user' , 'index/User' ); //第一个参数(定义的路由规则),第二个参数(哪一个模块下的哪一个控制器)
User控制器定义如下:<?php
namespace app\index\controller;
class Detail
{
public function getInfo()
{
}
public function getPhone()
{
}
public function postInfo()
{
}
public function putInfo()
{
}
public function deleteInfo()
{
}
}
?>
namespace app\index\controller;
class Detail
{
public function getInfo()
{
}
public function getPhone()
{
}
public function postInfo()
{
}
public function putInfo()
{
}
public function deleteInfo()
{
}
}
?>
时间:2018.4.30