开发者

Filter across three tables using Django

I have 3 django models, where the first has a foreign key to the second, and the second has a foreign key to the third. Like this:


class Book(models.Model):
    year_published = models.IntField()
    author = models.ForeignKey(Author)

class Author(models.Model):
    author_id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=50)
    agent = models.ForeignKey(LitAgent)

class LitAgent(models.Model):
开发者_JAVA百科    agent_id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=50)

I want to ask for all the literary agents whose authors had books published in 2006, for example. How can I do this in Django? I have looked at the documentation about filters and QuerySets, and don't see an obvious way. Thanks.


LitAgent.objects.filter(author__book__year_published=2006)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜