如果用户在另一个django模型的多对多字段的字段中,如何获取对象?

时间:2011-12-02 16:49:27

标签: python django django-models

我有模特:

class Project(models.Model):
    title = models.CharField(max_length=75)
    description = models.CharField(max_length=250)
...

class Node(models.Model):
    title = models.CharField(max_length=75)
    collaborators = models.ManyToManyField(User)
    project = models.ForeignKey(Project)

我要做的是获取请求页面的用户所在的项目是项目中节点的一部分。

例如: 如果项目A,B,C,D和请求用户是项目A和D中的节点上的协作者,则将返回项目A和D(最好还能够访问这些节点)。

最有效的方法是什么?

1 个答案:

答案 0 :(得分:2)

Project.objects.filter(node__collaborators=my_user)