簡體   English   中英

在foreach Laravel 4控制器/視圖內部查詢

[英]Query inside foreach Laravel 4 Controller/view

好吧,在我看來,我有一個foreach,並且我用{{$ look-> item1_id}}顯示產品的ID,但是我需要名稱,所以我需要查看另一個表來查找名稱,但是如何?

我在一家小商店里,有些物品會產生不同的“外觀”。

我的數據庫看起來像這樣:

items table:
id/item_name/other_fields

looks table:
id/look_name/item1_id/item2_id/item3_id

我的控制器看起來像:

$looks=Look::where('gender', '=', "girls")->get(); 
return View::make('store')->with('looks', $looks)

所以我認為:

   @foreach ($looks as $looks)
        Id: {{$looks->item1_id}} 
        Name: ??
   @endforeach

我的模特:

class Look extends Eloquent
{
    protected $table='looks';
}
class Item extends Eloquent
{
    protected $table='items';

}

我知道可以使用雄辯的關系,但是我無法更改數據庫。

謝謝

您應該使用一個關系,但是您可以根據需要運行查詢並獲取項目的名稱。

DB::table('items')->where('id', $looks->item1_id)->pluck('item_name')

請記住,每次循環都會執行查詢。 如果您期望很多查詢,則可能需要使用以下代碼:

// Outside the loop
$items = DB::table('items')->where('id', $looks->item1_id)->list('item_name', 'id')

// Inside the loop
$items[$looks->item1_id]

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM