0
我有一個模型客戶端的laravel應用程序。Laravel用關係和計算返回集合
客戶端有許多地址,許多工作和許多交易。
我已經在我的客戶端模型如下關係:
public function jobs()
{
return $this->hasMany('App\Job','client_id');
}
public function addresses()
{
return $this->hasMany('App\Address','client_id');
}
public function Fees()
{
return $this->hasMany('App\Transaction','client_id');
}
我再有這種模式,其計算
public function balance()
{
return $this->Fees()->where('status',2)->sum('gross');
}
我試圖返回一個列表值的另一個功能所有客戶以及他們的地址,工作和每個客戶的餘額。
我已經試過如下:
$customers = $user->clients()->with('balance')->with('jobs')->with('addresses')->get();
我收到以下錯誤
呼叫到字符串
一個成員函數addEagerConstraints()這無疑將是預先加載和事實的平衡()不是一個集合,但我想知道我將如何實現相同的結果,而不必循環建立一個數組。
感謝,我已經試過,但它返回的所有費用,而不是該和值使用條件與功能? –
新的更新應該是有效的。它基於這個鏈接。 https://laracasts.com/discuss/channels/eloquent/how-to-use-sumcolumn-from-relation-in-where-clause-and-orderby-it –