2010-08-20 10 views
6

Soy nuevo a Django, por lo que la respuesta a esto es probablemente muy simple. Sin embargo, no puedo resolverlo.Seleccione Hijos de un objeto con ForeignKey en Django?

Supongo que tengo dos modelos básicos.

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

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

En la terminal de Python/Django, si tengo un objeto Blog en una variable (por ejemplo blog = Blog.objects.get(id=3)), ¿cómo puedo seleccionar todos sus comentarios niño?

no parece que esto funcione: blog.objects.all()

+0

que debería ser el blog = models.ForeignKey (Blog)? – second

+0

@second ¡Vaya! Sí, debería. Editado – Vortico

Respuesta

14

a seguir las claves externas 'hacia atrás' se utiliza

blog.comment_set.all() 
+1

¡No puedo creer que haya pasado eso en la página de Hacer Consultas en la documentación! ¡Gracias! – Vortico

+0

¿Has leído el tutorial básico en django.org? – leoluk

+0

Sí, pero pensé que la función _set se usó en muchas relaciones ManyToMany para obtener la lista de padres ForeignKey, en lugar de lo contrario. – Vortico

Cuestiones relacionadas