循环遍历模型对象以检查是否填充了字段

时间:2015-03-17 21:44:03

标签: python django django-models

我正在研究一个django项目,并试图找出如何遍历所有“任务”模型对象,并检查ManyToMany“user”字段是否由特定类型的用户模型对象填充。

是否有一种简单的方法可以迭代所有模型对象来执行此操作?

1 个答案:

答案 0 :(得分:0)

您不必迭代对象。例如,假设您的Task模型类似于:

class Task(models.Model):
     users = models.ManyToManyField(User)
     ...

然后以下查询将返回所有Task个对象,这些对象至少有一个相关用户是“学生”:

Task.objects.filter(users__type='Student')

双下划线(__)告诉Django遍历多对多关系,并从type表中获取User列。