sold_items:
id order_id customer_id name
-- -------- ----------- ----
1 5 14 An object
orders:
id po_num
-- ------
... ...
5 123
customers:
id name
-- ----
... ...
14 John Doe
SoldItem
有一个order_id
和一个customer_id
。
我正在尝试通过hasOne
定义Order
及其Customer
之间的 SoldItem
关系,而不必插入{ customer_id
模型表中的{1}}列。
Order
似乎是解决方案,但我不知道从那里去哪里,或者甚至是答案?
hasOneThrough
答案 0 :(得分:1)
用于客户模型
{
public function sold_items()
{
return $this->hasMany('App\SoldItem');
}
}
用于订单模型
{
public function sold_items()
{
return $this->hasOne('App\SoldItem');
}
}
针对SoldItem模型
{
public function customer()
{
return $this->belongsto('App\Cutomer');
}
public function order()
{
return $this->belongsto('App\Order');
}
}
我更喜欢先处理它们之间的关系,然后使用with()函数获取它们的值。
use App\Customer;
$customer = Customer::with('sold_items','sold_items.order')->get();
答案 1 :(得分:0)
我最终通过Customer
将attribute
的{{1}}变成了Order
的{{1}},
sold_items