文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

07.资源控制器

2023-09-07 17:10

关注

学习要点:
1.资源控制器
本节课我们来开始学习控制器的快捷方法:资源控制器。
一.资源控制器
1. 声明:资源控制器是某个特定场景下的产物,完全理解需要 PHP 项目基础;
2. 比如开发过博客系统,留言帖子系统之类,具有类似思维,否则你懂的..;
3. 只是学习了 PHP 基础,就立刻学习框架的同学,可以过一遍即可(不影响后续)..;
4. 有一种控制器专门处理 CURD(增删改查),方法很多且方法名基本固定;
5. 对于这种控制器,我们可以将它设置为资源型控制器,不要大量设置路由;
6. 这里推荐直接使用命令行生成资源路由,比如:BlogController;
php artisan make:controller BlogController --resource
7. 生成了的资源控制器会产生 7 个方法,配置好路由后会自动生成相关内容
Route::resource('blogs', 'BlogController'); //单个资源路由
//批量定义资源路由
Route::resources([
'blogs' => 'BlogController'
]);
HTTP 类型 路由 URI 控制器方法 路由命名 描述
GET blogs index() blogs.index 获得数据列表
GET blogs/create create() blogs.create 创建页面(表单页)
POST blogs store() blogs.store 创建页的接受处理
GET blogs/{blog} show() blogs.show 获得一条数据
GET blogs/{blog}/edit edit() blogs.edit 编辑(表单页)
PUT/PATCH blogs/{blog} update() blogs.update 从编辑页中接受处理
DELETE blogs/{blog} destroy() blogs.destroy 删除一条数据
8. 如果我们注册了资源路由,那么如上图的资源路由 URI 和名称均自动创建生效;
http://localhost:8000/blogs/10/edit //可以访问到 edit 方法
return route('blogs.store'); //可以通过助手 route()了解是否注册
9. 还有一条命令可以直接查看目前可用的路由以及命名;
php artisan route:list
10. 我们也可以限制资源路由只开放部分方法或排除部分方法,可以用命令查看;
//只有 index(),show()可访问
Route::resource('blogs', 'BlogController')
->only(['index', 'show']);
//排除 index(),show()的其它方法可访问
Route::resource('blogs', 'BlogController')
->except(['index', 'show']);
11. 资源控制器还有一种不需要 HTML 页面方法的 API 路由,只提供数据接口;
//API 资源,并不需要 HTML 页面(create,edit),会排除
Route::apiResource('blogs', 'BlogController');
//批量方式
Route::apiResources([
'blogs' => 'BlogController'
]);
12. 当然,也支持一开始就生成一个不包含 HTML 页面方法的资源控制器;
13. 要注意的是,对应的资源路由,直接使用 api 资源路由即可;
php artisan make:controller CommentController --api
Route::apiResource('comments', 'CommentController');

来源地址:https://blog.csdn.net/qq_34820433/article/details/130608690

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯