python - 如何计算字典中的项目并根据项目 ID 过滤?
问题描述
我正在查询以下使用来自 Django contrib auth 的用户和组的字典:
在views.py
我将以下内容作为上下文传递给模板:
group_user_dict = {group: group.user_set.all() for
group in Group.objects.all().order_by('id')}
然后很容易遍历所有项目:
{% for group, users in group_user_dict.items %}
{{ group.id }}: {{ group.name }}
{% for i in users %}
{{ i.get_full_name }}
{% endfor %}
{% endfor %}
但是,我怎么能:
计算每个组中的用户数并将其显示在模板中吗?例如
{{ group.users_set.count() }}
只显示第一、第二、第三(等等)组的结果?例如
Group 1 ID, Group 1 name: Users in group 1 only
。
解决方案
尝试{{ users.count }}
第一个问题。
例如,对于显示组 2 中的用户,它将是{{ for user_of_group_2 in group_user_dict.values.1 }}
.
对于计算组列表,它将是{{ group_user_dict.keys|length }}
.
如果您有不明白的地方,请随时提问。
推荐阅读
- sql - TSQL:在动态 SQL 中使用“输出”子句
- python - 当我激活覆盆子 gpio 时向客户端发送 json 响应
- reactjs - react redux mapStateToProps - 正确的道具没有进入组件
- c# - 使用 linq 使用项目修改更新列表
- linux - 如何从 struct pci_dev 获取总线/设备/编号?
- django - 如何在过滤器上使用注释而不是循环
- lua - 在haproxy中调用lua响应503
- javascript - SyntaxError: Unexpected token : 在 TypeScript 中使用 Aurelia 运行玩笑测试时
- python - 如何从同级 __init__.py 导入?
- c++ - if vs if constexpr inside constexpr 函数