You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django中如何在模板上显示Count函数统计的结果?

Django模板显示员工总数的正确实现

问题核心

你的代码存在两处关键错误:

  • 模板中{{ view.return_total_employees }}的调用方式不符合Django模板规则,无法直接调用视图函数获取结果
  • 当前访问的home视图未向模板传递员工总数变量,而return_total_employees视图未被正确触发

修复方案

方案1:合并统计逻辑到首页视图(推荐)

修改views.py的home函数,直接完成统计并传递数据:

from django.db.models import Count
from .models import Employees

def home(request):
    # 统计员工总数,EmployeeCard作为唯一标识字段
    total_employees = Employees.objects.aggregate(total=Count('EmployeeCard'))['total']
    return render(request, 'dashboard.html', {'total_employees': total_employees})

修改模板dashboard.html,直接使用传递的变量:

<h1>已注册员工总数:{{ total_employees }}</h1>

方案2:单独接口获取数据(适用于异步场景)

若需通过独立接口获取总数,可保留return_total_employees视图,但需修正两个问题:

  • 变量名不要带空格:原代码中{'return_total ': return_total }的键多了空格,应改为{'total_employees': return_total}
  • 模板需通过AJAX请求该视图对应的URL来获取数据,或直接访问该视图的路由

注意事项

  • 确保EmployeeCard是Employees模型中唯一标识员工的字段,避免重复统计
  • 检查路由配置,确保访问的视图是传递了变量的那个

内容的提问来源于stack exchange,提问作者Gustavo Cavasotto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 00:55:34