Django查询:想要在模板中计算一组

时间:2011-04-04 14:17:34

标签: python html django count

我有一个项目列表,只显示每个项目的最新状态。我现在要做的就是数数。问题是count函数只有在删除latest时才能正常工作 - 不过这会给我这样的东西。

item1 = 1 item2 = 33 item3 = 12 item4 = 0

基本上它会计算该项目的所有状态,但它需要专注于计算最新状态,因此这种情况下的答案应为3.这就是我需要最新latest的原因。 存储项和状态之间也存在外键关系,项可以有多种状态,如果没有,则根本没有状态。

#views.py
client = models.Client.objects.get(pk = client_id)
items = client.storageitem_set.all()

模板

{% for item in items %}
        {{item.itemstatushistory_set.latest}}
{% endfor %}

1 个答案:

答案 0 :(得分:0)

在我看来,您需要的只是具有状态的所有项目的计数 - 而不是与您的项目相关的所有状态的计数。是对的吗?如果是这样,这样就可以了:

count = models.StorageItem.objects.filter(client=client_id, itemstatushistory__isnull=False).count()
相关问题