Py学习  »  Django

django如何在模板中显示子查询

Serho Montero • 5 年前 • 1630 次点击  

我的看法是:

credits = Credit.objects.filter(account=OuterRef('pk')).values('account_id').annotate(sum_credits=Sum('amount'))
debits = Debit.objects.filter(account=OuterRef('pk')).values('account_id').annotate(sum_debits=Sum('amount'))
dif = Account.objects.annotate(credit_sum=Subquery(credits.values('sum_credits')),debit_sum=Subquery(debits.values('sum_debits')),balance=F('credit_sum') F('debit_sum')).values_list('name', 'balance')

我的模板:

{% for account in dif %}
<tr>
  <td>{{ account }}</td>
  <td></td>
  <td></td>
  <td></td>
</tr>
{% endfor %}

结果:

('andrea', 10)          
('mosca', 20)           

如何删除括号?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46185
 
1630 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Selcuk
Reply   •   1 楼
Selcuk    5 年前

返回的值是 tuples . 可以使用索引访问它们,例如:

{{ account.0 }}'s balance is {{ account.1 }}

将打印

andrea's balance is 10