【发布时间】:2018-06-12 11:02:19
【问题描述】:
我有一张Product Orders 的桌子。订单属于Customer(买家),其id 在订单记录中。我可以通过默认hasMany 关系获取客户订单
// Customer model
public function orders() {
return $this->hasMany(Order::class);
}
另一方面,由于每个Product都属于一个Customer(与订单中id不同的那个)Customer(卖家),我想要另一个Customer可以看到列表Orders 里面有他的Product。
当他是卖方或买方时,我想获取客户Orders 的列表。我想创建自定义关系或修改关系以实现结果。
是否可以通过 Laravel 的关系实现这一点?
客户表:
---------------------------
| customer_id | name |
---------------------------
| 1 | seller |
| 2 | buyer |
产品表:
---------------------------------------
| product_id | name | seller_id |
---------------------------------------
| 101 | iPhone 6s | 1 |
订单表
----------------------------------------
| order_id | customer_id | product_id |
----------------------------------------
| 500 | 2 | 101 |
当使用简单的hasMany 关系时,买家会在他的订单列表中看到订单 500。
$buyer->orders();
我想创建一个关系,当我从卖方调用它时,他可以在他的订单列表中看到订单 500。
$seller->orders();
【问题讨论】:
标签: laravel eloquent relationship