码迷,mamicode.com
首页 > 其他好文 > 详细

'ManyRelatedManager' object is not iterable

时间:2016-07-14 11:51:05      阅读:1125      评论:0      收藏:0      [点我收藏+]

标签:

先看下面的代码:

class Worker(models.Model):
    departments = moels.ManyToManyField(Department, verbose_name=u"部门列表", blank=True, related_name=workers)

class Department(models.Model):
    name = models.CharField(u"名字", max_length=255)
    wx_id = models.CharField(u"部门id", max_length=64, null=True, blank=True, db_index=True)

# 执行如下代码
worker = Worker.objects.get(pk=14)
worker.departments = models.Department.objects.filter(wx_id__in=info.get("department"))
for dept in worker.departments:
    print(dept.wx_id)

这个时候会报错‘ManyRelatedManager‘ object is not iterable, 原因是worker.departments是不可迭代的,可以使用for dept in worker.departments.all()来迭代

'ManyRelatedManager' object is not iterable

标签:

原文地址:http://www.cnblogs.com/Raymon-Geng/p/5669865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!