如何通过 laravel 中的交易显示银行余额
How to show bank balance through transactions in laravel
我有银行 table 和交易 table。这种关系是一对多的,所以一家银行可能有很多笔交易。事务 table 具有银行外键 (bank_id)。每笔交易都有一列 'type' ,它要么是贷方,要么是借方。
我想根据交易显示每个银行的余额。
这是我的问题:
- 如何select特定银行?
- 如何计算银行的余额?
- 我应该在控制器、模型还是视图中计算它?哪一个最好?
这是交易 table:
提前致谢!
您需要在模型中创建关系,就像在交易模型中这样:
public function bank(){
return $this->belongsTo(Bank::class);
}
这在银行模型中
public function transactions (){
return $this->hasMany(Transactions::class);
}
然后您可以像这样访问它们:
$this->bank->transactions;
Laravel 有优秀的文档,你只需要阅读它们,例如Relationships
我不确定你想做什么。你会 select 像
这样的银行
$bank = Bank::find(2);
你可以做类似的事情
$bank->transactions->sum('amount');
我想显示我数据库中每家银行的余额。我必须对属于一家银行的所有贷方求和,然后对该银行的所有借方求和,然后找到余额,即贷方减去借方。所以使用你提到的关系。我写了这段代码。
<td>{{$bank->transactions->where('type', 'credit')->sum('amount') - $bank->transactions->where('type', 'debit')->sum('amount')}}</td>
我有银行 table 和交易 table。这种关系是一对多的,所以一家银行可能有很多笔交易。事务 table 具有银行外键 (bank_id)。每笔交易都有一列 'type' ,它要么是贷方,要么是借方。 我想根据交易显示每个银行的余额。
这是我的问题:
- 如何select特定银行?
- 如何计算银行的余额?
- 我应该在控制器、模型还是视图中计算它?哪一个最好?
这是交易 table:
您需要在模型中创建关系,就像在交易模型中这样:
public function bank(){
return $this->belongsTo(Bank::class);
}
这在银行模型中
public function transactions (){
return $this->hasMany(Transactions::class);
}
然后您可以像这样访问它们:
$this->bank->transactions;
Laravel 有优秀的文档,你只需要阅读它们,例如Relationships
我不确定你想做什么。你会 select 像
这样的银行$bank = Bank::find(2);
你可以做类似的事情
$bank->transactions->sum('amount');
我想显示我数据库中每家银行的余额。我必须对属于一家银行的所有贷方求和,然后对该银行的所有借方求和,然后找到余额,即贷方减去借方。所以使用你提到的关系。我写了这段代码。
<td>{{$bank->transactions->where('type', 'credit')->sum('amount') - $bank->transactions->where('type', 'debit')->sum('amount')}}</td>