如何显示 pivot table 的值? Laravel 5.3

How can I display value of pivot table ? Laravel 5.3

我有 3 个模型:商店模型、产品模型、订单模型

店铺模式是这样的:

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

产品型号是这样的:

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

订购型号是这样的:

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 个 table:商店 table、订单 table、产品 table、orders_products table

orders_producs table 是枢轴 table

在视图中 blade laravel 我称之为:

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

有效。成功显示店名

我的问题是当我想显示产品名称时

鉴于bladelaravel我试试:

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

存在错误:

Undefined property: Illuminate\Database\Eloquent\Collection::$id (View:...

调用方式好像不对

我该如何解决?

因为是belongsToMany(),你可以这样显示数据:

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