Collections laravel5.3关系(集合)
我有三张桌子:Collections laravel5.3关系(集合),collections,orm,eloquent,laravel-5.3,Collections,Orm,Eloquent,Laravel 5.3,我有三张桌子: users -id -name -... addresses -id -user_id -... transactions -id -address_id -amount 我的模型是这样的: 用户模型: public function addresses() { return $this->hasMany('App\Address'); } 地址模型: public function user(
users
-id
-name
-...
addresses
-id
-user_id
-...
transactions
-id
-address_id
-amount
我的模型是这样的:
用户模型:
public function addresses()
{
return $this->hasMany('App\Address');
}
地址模型:
public function user()
{
return $this->belongsTo('App\User');
}
public function transactions()
{
return $this->hasMany('App\Transaction');
}
交易模型:
public function address()
{
return $this->belongsTo('App\Address');
}
现在我想要某个用户所有事务的总和。
使用雄辩的方式归档此文档的最佳方式是什么
dd($forwarded_total->sum('addresses.transactions.amount'));
始终返回0。您可以在用户
模型中创建一个关系,以获取所有相关交易,如下所示:
public function transactions()
{
return $this->hasManyThrough('App\Transaction', 'App\Address');
}
然后您可以通过以下方式查询:
$total_sum = User::find(1)->transactions->sum('amount');
您可以在User
模型中创建一个关系,以获取所有相关交易,如下所示:
public function transactions()
{
return $this->hasManyThrough('App\Transaction', 'App\Address');
}
然后您可以通过以下方式查询:
$total_sum = User::find(1)->transactions->sum('amount');