- 我有模式
Order
中使用自定义属性模型。 - 订购有许多
Item
。 - 一种
Item
具有price
属性(从数据库)。 - 的
Order
有getAmountAttribute
方法,该方法是这样的:
/**
* @return double
*/
public function getAmountAttribute()
{
return $this->items->sum('price');
}
/**
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function items()
{
return $this->hasMany(Item::class);
}
所以我可以简单地做$order->amount
上获取订单的项目的总价格。Laravel 5.4 - 集合
现在我的Order
集合,我希望获取每一笔订单,其总价格开始于10,如何做到这一点,因为我不能用我的自定义属性上where
声明?
如果你有一个现有的集合,只需要运行一个循环。否则,你可能需要一个自定义的SQL查询。 – HtmHell
集合上的'filter()'应该足够了。 –