为了账号安全,请及时绑定邮箱和手机立即绑定

用thinkphp进行增删改查的操作

标签:
PHP ThinkPHP

在route.php下注册api:

Route::resource('api/:ver/books', 'api/:ver.books');
Route::post('api/:ver/books', 'api/:ver.books/save');
Route::delete('api/:ver/books', 'api/:ver.books/delete');
Route::put('api/:ver/books', 'api/:ver.books/update');


book表的结构:

https://img1.sycdn.imooc.com//5c1219910001769d15140518.jpg

在app\common\model下建立book的model:

class Books extends Base {


    public function getBooks($data = []) {

        $result = $this->select();
        return $result;
    }

}

然后在建一个Books.php

https://img1.sycdn.imooc.com//5c1219de00013a4618880844.jpg

class Books extends Controller
{

    public function index()
    {
        // 小伙伴仿照我们之前讲解的validate验证机制 去做相关校验
        $data = input('get.');
        $result = model('Books')->getBooks();
        return $result;
    }

    public function save()
    {
        $postData  =  input('param.');

        if(empty($postData["bookid"])) {
            $data = [];
            $data['bookName'] = $postData["bookName"];
            $data['book_description'] = $postData["bookDescription"];
            $data['icon'] = "http://pij4ed5ao.bkt.clouddn.com/33.jpeg";
            try {
                model('Books')->add($data);
            }catch (\Exception $e) {
                return show(config('code.error'), $e->getMessage(), [], 500);
            }
        }else{
            try {
                model('Books')->save([
                    'bookName' => $postData["bookName"]
                ],[
                    'bookid' => $postData["bookid"]
                ]);

            }catch (\Exception $e) {
                return show(config('code.error'), $e->getMessage(), [], 500);
            }
        }


        return null;
    }


    public function delete() {
        $id = input('delete.bookid', 0, 'intval');
        if(empty($id)) {
            return show(config('code.error'), 'id不存在', [], 404);
        }

        $data = [
            'bookid' => $id,
        ];
        // 查询库里面是否存在 点赞
        $userNews = model('Books')->get($data);
        if(empty($userNews)) {
            return show(config('code.error'), '没有这条记录', [], 401);
        }

        try {
                 model('Books')
                ->where($data)
                ->delete();
        }catch (\Exception $e) {
            return show(config('code.error'), '内部错误 点赞失败', [], 500);
        }
    }


    public function update() {
        $putData  =  input('param.');
        try {
            model('Books')->save([
                'bookName' => $putData["bookName"]
            ],[
                'bookid' => $putData["bookid"]
            ]);

        }catch (\Exception $e) {
            return show(config('code.error'), $e->getMessage(), [], 500);
        }
        return null;
    }




}

在postman中就可以测试:

https://img1.sycdn.imooc.com//5c121a100001c08d21441136.jpg



代码在https://coding.net/u/nickgao/p/phpUserLogin/git

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
6508
获赞与收藏
303

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消