【发布时间】:2018-07-01 05:49:26
【问题描述】:
假设我有三个模型:Subscription、Description 和 Expense。
每个订阅都属于一个描述,并且每个描述都有很多费用:
模型订阅:
public function description()
{
return $this->belongsTo(Description::class);
}
型号说明:
public function expenses()
{
return $this->hasMany(Expense::class);
}
模型费用:
public function description()
{
return $this->belongsTo(Description::class);
}
我希望能够根据描述检索订阅的所有费用。当我有一个订阅时,我可以这样做:
$subscription->load(['description.expenses' => function ($q) use (&$transactions, $subscription) {
$transactions = $q->with('description')
->get());
}]);
但是当我想检查所有订阅的所有费用时,我不确定如何去做。我试过使用hasManyThrough,但我认为这根本行不通,因为我的Description 和Expense 都有subscription_id。我也不想为Subscription 和Expense 建立直接关系。
任何指针如何获取所有订阅的所有费用?或者更确切地说,是所有订阅的所有费用的总和?
【问题讨论】: