2010-03-11 67 views
1

我有3個django模型,其中第一個具有第二個外鍵,第二個具有第三個外鍵。像這樣:使用Django過濾三個表格


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): 
    agent_id = models.AutoField(primary_key=True) 
    name = models.CharField(max_length=50) 

例如,我想要問所有的作家在2006年出版過書籍的文學代理人。我如何在Django中做到這一點?我查看了關於過濾器和QuerySets的文檔,並沒有看到明顯的方式。謝謝。

回答

10
LitAgent.objects.filter(author__book__year_published=2006) 
+0

它的工作,謝謝。 –