私はLaravelのコツをつかもうとしています。Laravel 4 を使用しています。現在、「Products」テーブルと「Images」テーブルの 2 つのテーブルがあります。商品には多くの画像を含めることができ、画像は商品に属します。
だから私は2つのモデルを持っています:
class Product extends Eloquent {
public function images()
{
return $this->hasMany('Image');
}
}
class Image extends Eloquent {
protected $table = 'product_images';
public function product()
{
return $this->belongsTo('Product');
}
}
今、リソースの「インデックス」ページを構築しているので、コントローラーで Product::all() を実行し、これをビューに送信します。
ビューで foreach を実行し、すべての製品をループします。しかし今、私は製品で表示する画像を取得したいと考えています. しかし、たとえば最初の画像を取得する方法がわかりません。
私がそう$product->images
すると、製品に関連するすべての画像のオブジェクトを取得します。
実行すると$product->images->url
エラーが発生します (未定義のプロパティ 'url')
これも試してみまし$product->images->first()->url
たが、エラーが発生します(非オブジェクトのプロパティを取得しようとしています)
私は何を間違っていますか?