所以,我有3个表借款人,头像和贷款
借款人 - > HAS_ONE头像
借款人 - >的has_many贷款
贷款控制器
def list_borrowers do
query =
from(
p in Borrower,
select: p,
preload: [:avatar],
preload: [:loan] # I WANT TO AGGREGATE THIS USING COUNT
)
IO.inspect(Repo.all(query))end
这是正常的工作我的问题是我不知道如何聚合贷款。
我只是想知道,借款人的所有贷款的数量。
我不知道任何可能的方式来preload
的总和,但你可能反而声明virtual field并将其包含到您的查询为:
from p in Borrower,
join: l in Loan,
on: p.id == l.borrower_id,
select: %{p | loan_count: count(l.id)}, # virtual field
preload: [:avatar]