【发布时间】:2018-12-21 22:30:30
【问题描述】:
我有一对多关系的问题!所以我尝试总结产品价格,所以这就是我的意思:
型号: 产品.php
/**
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function orders(){
return $this->hasMany(Order::class);
}
型号: 订单.php
/**
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function product(){
return $this->belongsTo(Product::class);
}
所以我想做这样的事情:$var->product->price->sum();
如果需要,我的数据库:
订单:
id product_id|user_id|
|-|----------|-------|
|1|1 |1 |
| | | |
而 Products 只有 4 列:id,name,price,description
我的意思是:
products:
id\1
name\productname
price \1.00USD
id\2
name\productname2
price \1.00USD
它必须返回所有产品的总和,所以它必须返回 2.00USD
@Jonas Staudenmeir
【问题讨论】:
-
您的每个订单只有一件商品?如果没有,那么您可能需要
many to many与中间表的关系。 Doc -
是的,我每个订单只有一件商品
-
你到底想总结什么?
$var是什么? -
如果您只有一种产品,那么为什么要使用
sum?你可以试试$order->product->price;。如果您在订单中有quantity字段,您可以将价格乘以该字段。 -
hmm.. 你能解释一下如何处理多对多关系吗?