7.2. 删除回复

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

删除回复

本章节我们将开发帖子回复的删除功能。每一次开发『删除』这种危险性较高的功能时,我们需要特别注意权限的控制。根据现有的 Larabbs 回复功能,拥有删除回复权限的身份只有以下三种:

  • 『回复的作者』
  • 『回复话题的作者』
  • 『管理员』

接下来我们开始开发此功能,同时做好权限控制。

1. 增加路由

routes/api.php

.
.
.
                    // 发布回复
                    Route::post('topics/{topic}/replies', 'RepliesController@store')
                        ->name('topics.replies.store');
                    // 删除回复
                    Route::delete('topics/{topic}/replies/{reply}', 'RepliesController@destroy')
                        ->name('topics.replies.destroy');

.
.
.

2. 修改 Controller

app/Http/Controllers/Api/RepliesController.php

.
.
.
    public function destroy(Topic $topic, Reply $reply)
    {...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:1
讨论数量: 7

zssen
topics 表的 reply_count 都为 0,删除时会报错
2 个点赞 | 6 个回复 | 分享 | 课程版本 5.5
hehorange
删除回复还需要 topic_id 是不是多余了?
1 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
TF
删除回复全部返回 403?
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
xinxinx
为什么id为1的账号删除不了别人的回复?
0 个点赞 | 5 个回复 | 问答 | 课程版本 8.x
剑歌丶
怎么时不时的就显示`This action is unauthorized`?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
Geekc
白衣落水
删除话题和删除回复的路由命名不一致
0 个点赞 | 1 个回复 | 分享 | 课程版本 5.5