我正在研究一个django项目,并试图找出如何遍历所有“任务”模型对象,并检查ManyToMany“user”字段是否由特定类型的用户模型对象填充。
是否有一种简单的方法可以迭代所有模型对象来执行此操作?
答案 0 :(得分:0)
您不必迭代对象。例如,假设您的Task
模型类似于:
class Task(models.Model):
users = models.ManyToManyField(User)
...
然后以下查询将返回所有Task
个对象,这些对象至少有一个相关用户是“学生”:
Task.objects.filter(users__type='Student')
双下划线(__
)告诉Django遍历多对多关系,并从type
表中获取User
列。