Tengo algunas clases modelo con relaciones básicas de uno a muchos. Por ejemplo, un libro tiene muchas recetas, y cada receta tiene muchos ingredientes:Aplanamiento de la relación uno a muchos en Django
class Book(models.Model):
name = models.CharField(max_length=64)
class Recipe(models.Model):
book = models.ForeignKey(Book)
name = models.CharField(max_length=64)
class Ingredient(models.Model):
text = models.CharField(max_length=128)
recipe = models.ForeignKey(Recipe)
me gustaría una lista plana de todos los ingredientes en todas las recetas de un libro en particular. ¿Cuál es la mejor manera de expresar esto en Python?
Si yo estaba usando LINQ, podría escribir algo como esto:
var allIngredients = from recipe in book.Recipes
from ingredient in recipe.Ingredients
select ingredient;
Bueno, supongo que si quieres hacerlo de la manera más simple y de una sola línea, podrías hacerlo. ;) –