iT邦幫忙

0

有關laravel relationship的問題

大家好, 想請教大家如何把這個改用relationship方式

$items = Item::where('inventory', '>', 0)
->leftJoin('image_uploads', 'item.id', '=', 'image_uploads.itemID')
->select('item.*',DB::raw("GROUP_CONCAT(image_uploads.filename SEPARATOR ',') as 'filename'"))
->groupBy('item.id')
->get()->toArray();

firecold iT邦新手 3 級 ‧ 2020-01-13 16:03:59 檢舉
我留在下面你好像看不到
看哪邊有錯誤訊息 可以貼出來看看

1 個回答

1
firecold
iT邦新手 3 級 ‧ 2020-01-13 14:30:23
最佳解答

在Item.php+上關聯image_uploads

因為用關聯了所以移除"GROUP_CONCAT(image_uploads.filename SEPARATOR ','
關聯內無特殊條件大概就這樣

Item.php
   public function image_uploads()
   {
       return $this->hasMany('Path\image_uploads', 'itemID', 'id');
   }
'Path\image_uploads'沒有的話就在建立一個ImageUploads的model

改寫
$items = Item::with(['image_uploads'])
           ->where('inventory', '>', 0)
           ->groupBy('id')
           ->get()->toArray();
diu7me iT邦新手 5 級 ‧ 2020-01-13 15:25:21 檢舉

感謝幫忙

firecold iT邦新手 3 級 ‧ 2020-01-13 15:35:16 檢舉

先看有沒有錯誤訊息
以及貼你+的code看看
先用first抓看看也有可能是你image_uploads資料太多

我要發表回答

立即登入回答