Laravel 5 在Laravel中使用HasManyThrough

Laravel 5 在Laravel中使用HasManyThrough,laravel-5,eloquent,Laravel 5,Eloquent,我的结构如下: 订单 身份证件 名字 产品 身份证件 名字 项目 身份证件 订单号 产品标识 数量 这些关系如下: 命令 项目 产品 public function items(){ return $this->hasMany(Item::class); } 我希望通过以下方式获得订单的所有产品: $order->items()->products()->get()使用hasManyThrough方法,但我一定是做错了,因为它试图在products表中查找项目id。我意识到我不需要很多

我的结构如下:

订单 身份证件 名字

产品 身份证件 名字

项目 身份证件 订单号 产品标识 数量

这些关系如下:

命令

项目

产品

public function items(){
 return $this->hasMany(Item::class);
}
我希望通过以下方式获得订单的所有产品:
$order->items()->products()->get()使用hasManyThrough方法,但我一定是做错了,因为它试图在products表中查找项目id。

我意识到我不需要很多到,我只需要使用items表作为透视表,在订单模型上定义关系,如下所示:

public function products(){
 return $this->belongsToMany(Product::class, 'items');
}
public function items(){
 return $this->hasMany(Item::class);
}
public function products(){
 return $this->belongsToMany(Product::class, 'items');
}