iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 9
2

此篇文章同步發表於個人部落格


原本我覺得查詢功能是一個最簡單製作的API,把所有的資料都讀出來給請求的使用者就好!但後來發現不是那麼容易~

查詢動物的動作有兩種

HTTP 動詞 URL 說明 Controller
GET /api/animal/1 查詢動物 ID 1 的資料 show
GET /api/animal 查詢系統目前的動物列表 index

查詢單一資源資料

單一資源比較簡單就把 animal 物件,查詢出來給使用者就可以了!
最多做一個Resource 來轉換一下要輸出的內容!(Resource這部分有點離題了!日後會有一篇寫 Resource 轉換回傳的JSON資料結構,先設計完成查詢API再說)

GET api/animal/2  

AnimalController

public function show(Animal $animal)
{
    return response($animal, Response::HTTP_OK);
}

show 傳入的物件 Laravel 會自動利用 Model 設定的主鍵去找出資料(主鍵預設id),以上面的請求來說,他會去尋找ID:2的資料,找到物件就可以做需要的商業邏輯,上面show的方法是看單一動物的資料,所以我目前就直接把找到的資料傳出來,就是這麼簡單!

查詢動物清單

接下來製作查詢動物清單的部分 

AnimalController

public function index()
{
    $animals = Animal::get();
    return response(['animals' => $animals], Response::HTTP_OK);
}

先做一個簡單的方法,就是把動物全部讀出來就好!

這部份可能要看你的資料的狀況,例如商品的列表,商品一定非常非常多,所以一定要做個篩選以及分頁

如果像是顯示類別(貓、狗...),我自己是直接把它全部讀取出來,因為數量少,也不會去做篩選的動作。

明天先來為我們的查詢API設定分頁功能。


上一篇
更新動物資料
下一篇
動物列表查詢及分頁
系列文
使用 Laravel 打造 RESTful API30

尚未有邦友留言

立即登入留言