本篇主要在了解,如何透過 Model 將資料讀出來
可以使用一些語法在 tinker 內查詢,ex:
Book::first() //這樣會抓第1筆資料
Book::find(2) //指定抓第2筆資料
如果想讓查詢時跳出明顯的錯誤提示,可以使用 findOrFail()
使用 where() 查詢時,因為Builder可以幫忙串很多where的條件,所以在使用 ->get() 告訴系統 where() 條件之前,是拿不到資料的,使用 get() 後,才能拿到符合 where() 條件的資料
Collection 是一個像陣列,但不是陣列的集合,可以在 view 使用迴圈,將其集合的資料一筆一筆印出來
Book::where(“title”,”like”,”為你自己學”)->get() 這樣查詢是沒有資料的
Book::where(“title”,”like”,”為你自己學%”)->get() 使用 like 時要加上"%"才能取得相關資料
可以使用 orderBy() 排序
切記:ORM很方便,但不一定什麼都要透過ORM來處理,ex:今天想要得到所有書的平均價格/最貴價格/最便宜價格/價格總和...諸如此類的資訊時,不需要透過 Book::all() 將全部資料抓出來後,再使用迴圈及其他方法做後續處理,可以直接透過 Book::sum('price') / Book::avg(price') / Book::max('price') / Book::min('price') 直接就能得到計算後的資料,這些是資料庫本來就能直接處理的