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

Django使用Paginator分页时报错object of type 'method' has no len()如何解决

报错原因

错误核心是你传入Paginator的数据源类型错误:

  • 你的代码中写的是wallpapers = Wallpaper.objects.all,没有给all添加括号执行调用,此时wallpapers变量存储的是all方法本身的引用,而非调用后返回的壁纸数据查询集
  • Paginator初始化时会调用len()计算数据源的总长度,方法类型对象不支持长度计算,因此触发了该TypeError。
修复方法

只需要修改views.py中获取壁纸数据的那一行代码,给all方法添加执行括号即可:

# 修改前
wallpapers = Wallpaper.objects.all
# 修改后
wallpapers = Wallpaper.objects.all()

修改后无需调整其他代码,重启服务即可正常使用分页功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 16:45:08