2010-08-20 18 views
6

Sono nuovo di zecca a Django, quindi la risposta a questo è probabilmente molto semplice. Tuttavia, non riesco a capirlo.Seleziona i figli di un oggetto con ForeignKey in Django?

Dire che ho due modelli bare-bones.

class Blog(models.Model): 
    title = models.CharField(max_length=160) 
    text = models.TextField() 

class Comment(models.Model): 
    blog = models.ForeignKey(Blog) 
    text = models.TextField() 

Nella shell Python/Django, se ho un oggetto Blog in una variabile (ad esempio blog = Blog.objects.get(id=3)), come faccio a selezionare tutte le sue osservazioni figlio?

Questo non sembra funzionare: blog.objects.all()

+0

che dovrebbe essere blog = models.ForeignKey (Blog)? – second

+0

@secondo Oops! Sì, dovrebbe. Modificato. – Vortico

risposta

14

a seguire le chiavi esterne 'a ritroso' si utilizza

blog.comment_set.all() 
+1

Non posso credere di averlo lasciato nella pagina Making Queries nella documentazione! Grazie! – Vortico

+0

Hai letto il tutorial di base su django.org? – leoluk

+0

Sì, ma pensavo che la funzione _set fosse usata su ManyToMany per afferrare l'elenco di genitori ForeignKey, invece del contrario. – Vortico

Problemi correlati