将以对文章的CURD操作作为示例,此篇只涉及基本的路由和控制器中> 方法,具体实现,将再后面继续讲解。
1.新建路由
在
app/Http/routes.php
中添加:
Route::resource('article','ArticleController')
;此
resource
路由中包含的子路由看后面的示例表;
2. 控制器
- 通过终端创建一个控制器
php artisan make:controller ArticleController
- 得到控制器类
app/Http/Controllers/ArticleController
- 如果要实现控制器文件在
app/Http/Controllers
下创建一个文件夹后,在里面创建控制器类,即可使用命令:
php aritsan make:controller Article/ArticleController
- 控制器类示例:
<?php
namespace App\Http\Controllers\Article;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class ArticleController extends Controller
{
//显示文章列表
public function index(){ //}
//文章新建页面
public function create(){ //}
//文章存储操作
public function store(Request $request){ //}
//文章详情显示
public function show($id){ //}
//文章编辑页
public function edit($id){ //}
//文章更新操作
public function update(Request $request, $id){ //}
//文章删除操作
public function destroy($id){ //}
}
3.(路由--->控制器)Restful对照关系示例表:
请求方法 | 路由地址 | 对应控制器方法 | 对应路由名称 | 当前作用 |
---|---|---|---|---|
GET | /article |
index() |
route('article.index') | 显示文章列表 |
GET | /article/ |
create() |
route('article.create') | 文章新建页面 |
POST | /article |
store(Request $request) |
route('article.store') | 文章存储操作 |
GET | /article/{id} |
show($id) |
route('article.index') | 文章详情显示 |
GET | /article/{id}/edit |
edit($id) |
route('article.edit') | 文章编辑页 |
PUT/PATCH | /article/{id}/ |
update(Request $request,$id) |
route('article.update') | 文章更新操作 |
DELETE | /article/{id} |
destroy($id) |
route('article.destroy') | 文章删除操作 |
- 注:
- 如果
form
表单要存储文章则action ="route('article.store')"
来对应URL - 访问
localhost:8000/article
则访问的是route('article.index')
对应的URL