在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表的结构:
在app\common\model下建立book的model:class Books extends Base {
public function getBooks($data = []) {
$result = $this->select();
return $result;
}
}
然后在建一个Books.php
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中就可以测试: