我有三个表:
products table
- id
- title
- etc.
purchases table
- id
- code
- etc.
purchase_products table
- id
- purchase_id
- product_id
- qty
- etc.
我的目标是检索单个产品的购买记录。下面的关系不适合我。尝试了不同的belongsToMany
方法,也不工作。
$this->hasManyThrough(
Purchase::class,
PurchaseProduct::class,
'purchase_id',
'product_id',
'id',
'id'
);
以一种简单的方式,我可以通过product_id获取所有购买产品,然后检索购买,但是我需要一个关系来工作,因为我想在资源上显示购买。
产品型号
class Product {
public function purchases()
{
return $this->belongsToMany(Purchase::class, 'purchase_products', 'product_id', 'purchase_id');
}
}
购买模型class Purchase {
public function products()
{
return $this->belongsToMany(Product::class, 'purchase_products', 'purchase_id', 'product_id');
}
}