【发布时间】:2014-03-20 22:34:55
【问题描述】:
我有两张桌子
cars (id, title)
parts (id, title)
我想将每辆车与很多零件以及特定汽车的零件价格联系起来......
我认为最好的方法是通过表格将它们关联起来:
car_parts(id, car_id, part_id, price)
如何在 Laravel 的 Eloquent 中定义这样的关系?
我想做
$car = Car::find(1);
$parts = $car->parts;
我想得到一个这样的对象数组
{
'id' => 1,
'title' => 'rear flash',
'price' => '10.00',
},{
...
}
如果我尝试了
public function parts(){
return $this->belongsToMany('Part', 'car_parts', 'car_id', 'part_id');
}
我不知道价格...
TIA
【问题讨论】:
-
当然,我不介意使用
id、title、car_id、part_id、price获取对象数组... -
id与part_id有何不同?他们不是同一个东西吗? -
不,约瑟夫,他们不是。 id 是包含 car_id 和 part_id 的数据透视表的 ID。