1

私が持っている3モデル:店のモデル、製品モデル、次のモデルピボットテーブルの値を表示するにはどうすればよいですか? Laravel 5.3

店のモデルは、このようなものです:

class Product extends Model 
{ 
    protected $fillable = ['store_id','category_id','name', 'photo','description']; 
    ... 
} 

次のモデルがある:

class Store extends Model 
{ 
    protected $fillable = ['name', 'user', 'address', 'phones', 'email', 'photo']; 
    ... 
} 

製品モデルは、このようなものです好きなもの:

class Order extends Model 
{ 
    ... 
    public function products() 
    { 
     return $this->belongsToMany(Product::class, 'orders_products') 
      ->withPivot('sub_total','quantity','price','information')->withTimestamps(); 
    } 
    public function store() 
    { 
     return $this->belongsTo(Store::class); 
    } 
} 

私は4つのテーブルを持っています:それは作品

<a href="javascript:">{{ $order->store->name }}</a> 

:E、製品テーブル、orders_productsテーブル

orders_producsテーブルは、私がこれを呼び出すビューブレードlaravelでピボットテーブル

です。これは成功表示店舗名

私の問題は、私は私がしようビューブレードlaravelでは、製品名

を表示したいときです:

未定義のプロパティ:

<a href="javascript:">{{ $order->products->name }}</a> 

エラーがありますが存在します。イルミネート\データベース\エレロクント\コレクションID :: (表示:...

電話の方法が間違っているようです

どうすれば解決できますか?

答えて

1

それはbelongsToMany()ですので、あなたは、このようなデータを表示できます。

@foreach ($order->products as $product) 
    {{ $product->name }} 
    {{ $product->pivot->price }} 
@endforeach 
+0

おかげで仲間を。あなたはとても素晴らしい –

関連する問題