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

运行Django的python manage.py runserver时出现TypeError: 'dict'对象不可调用

解决Django中'dict' object is not callable TypeError错误

环境信息

  • 请求方法:GET
  • 请求URL:http://127.0.0.1:8000/league/
  • Django版本:4.1.2
  • Python版本:3.10.0

报错详情

Traceback (most recent call last):
  File "/Users/km/Projects/tournament/Worldchamps/champ_env/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)

Exception Type: TypeError at /league/
Exception Value: 'dict' object is not callable

排查与解决方法

  • 检查视图函数返回值:Django视图必须返回可调用的响应对象(比如HttpResponse、JsonResponse、TemplateResponse),如果直接返回字典(比如return {'name': 'league'})就会触发这个错误。把返回字典的代码改成return JsonResponse({'name': 'league'}),或者渲染模板返回对应的响应对象。
  • 核对URL配置:打开项目的urls.py,确认/league/对应的路由是否正确指向了视图函数。别把字典当成视图配置,比如错误写法path('league/', {'key': 'val'}, name='league'),要改成path('league/', views.league_view, name='league')这种指向视图函数的写法。
  • 检查装饰器与中间件:如果视图用了自定义装饰器,或者项目加了第三方中间件,排查是否有代码错误把响应对象改成了字典。比如装饰器返回值错误,导致最终返回的是字典而非响应对象。
  • 类视图实现检查:如果用的是类视图,确认已经正确继承了Django的基类(比如View、ListView),并且get方法返回的是响应对象,而不是直接return字典。

内容的提问来源于stack exchange,提问作者Koome Mwiti

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 22:20:33