0

我有一个用户组模型:

class ProfileGroup(models.Model):
    user = models.ManyToManyField(user)
    name = models.CharField(max_length=100)

以及文章的模型:

class Article(models.Model):
    title = models.CharField(max_length=200)
    text = models.TextField()
    group = models.ForeignKey(ProfileGroup)
    owner = models.ForeignKey(user)

用户可以编辑自己的文章和分配的组中的文章。

如何从他的组中检索所有用户文章?我需要使用Q吗?也许足够的过滤器?

articles = Article.object.filter(....
4

1 回答 1

2

获取用户的文章:

Article.objects.filter(owner=user)

获取属于用户组之一的文章。

Article.objects.filter(group__user=user)

然后,您可以使用Q获取属于该用户或用户组之一的文章。

Article.objects.filter(Q(owner=user)|Q(group__user=user))
于 2013-05-02T20:50:18.987 回答