2016-09-13 47 views
0

すべての商品とその最初の画像をサムネイルとして表示したい。Laravel、関係のためにforeachを使用しないでください?

テーブル: - 製品 - 画像(外部キー - >製品のID)

私の製品リスト(foeachedトラフ)で、私はその製品の最初の画像のサムネイルを表示したい、I

@foreach($product->images as $image) 
    @if($loop->first) 
     <img src="{{ $image->thumbnail }}" alt=""> 
    @endif 
@endforeach 

しかし、この方法は醜いですし、最良の権利ではありませんか?私はそこで何ができますか?

答えて

1

$製品 - >画像そう集です。

if (!$product->images->isEmpty()) 
    $product->images->first()->thumbnail 

は、あなたが最初 の要素を取得するには、引数なしで最初のメソッドを呼び出すことができますfirst()

のためのドキュメントを参照してくださいコレクション

+0

私は「非オブジェクトのプロパティを取得しようとしています」と表示されます – Scarwolf

+0

hmmはコレクションが空でサムネイルがないことがありますか? –

+0

いいえ、特定の製品のサムネイルがあります。 – Scarwolf

0

は、それはあなたを助けるのご希望:

<img src="{!! $product->images()->first()->thumbnail !!}" alt=""> 
関連する問題