请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

8-1节/course/list报错'Page' object is not iterable

TypeError at /course/list/

'Page' object is not iterable
     

Request Method:

GET    

Request URL:

http://127.0.0.1:8000/course/list/    

Django Version:

1.9.8    

Exception Type:

TypeError    

Exception Value:

'Page' object is not iterable
   

Exception Location:

/usr/lib64/python2.7/site-packages/django/template/defaulttags.py in render, line 167    

Python Executable:

/usr/bin/python2.7    

Python Version:

2.7.5    

Python Path:

['/home/kaiz/PycharmProjects/MxOnline/extra_apps',
'/home/kaiz/PycharmProjects/MxOnline/apps',
'/home/kaiz/PycharmProjects/MxOnline',
'/home/kaiz/PycharmProjects/MxOnline',
'/home/kaiz/PycharmProjects/MxOnline/apps',
'/home/kaiz/PycharmProjects/MxOnline/extra_apps',
'/usr/lib64/python27.zip',
'/usr/lib64/python2.7',
'/usr/lib64/python2.7/plat-linux2',
'/usr/lib64/python2.7/lib-tk',
'/usr/lib64/python2.7/lib-old',
'/usr/lib64/python2.7/lib-dynload',
'/usr/lib64/python2.7/site-packages',
'/usr/lib64/python2.7/site-packages/gtk-2.0',
'/usr/lib/python2.7/site-packages']
   

Server time:

星期一, 23 一月 2017 10:07:09 +0800    


正在回答 回答被采纳积分+3

3回答

bobby 2017-01-23 17:59:22

Page' object is not iterable 你理解一下这个报错的意思, 你对page类型的变量进行了for循环你检查一下你的for循环并检查传递进去的类型是不是Page类型的

0 回复 有任何疑惑可以回复我~
  • 提问者 Kaiz不是 #1
    CourseListView里面
    
    courses = p.page(page)
    
    这个类型是page
    
    不明白怎么改
    回复 有任何疑惑可以回复我~ 2017-01-23 18:22:21
慕的地1353516 2019-08-04 14:49:32

我也遇到这个问题,百度了解决方法:

修改其原文件

打开paginator.py文件

在文件最后添加

   def __iter__(self):
       for i in self.object_list:
           yield i


参考:https://blog.csdn.net/weixin_44352981/article/details/86616326 

1 回复 有任何疑惑可以回复我~
提问者 Kaiz不是 2017-01-23 18:20:07

CourseListView里面

courses = p.page(page)

这个类型是page


0 回复 有任何疑惑可以回复我~
  • bobby #1
    你是view里面或者template里面对这个进行了for循环了吧
    你需要对page里面的object_list才能进行for循环 视频中你肯定写的某个地方不一样了
    回复 有任何疑惑可以回复我~ 2017-01-23 18:29:35
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信