Создание родительской и дочерней модели в одной форме django
Я пытаюсь создать форму для создания рецепта с моделью Recipe
и RecipeIngredient
, но когда пользователь создает рецепт, как мне разместить их оба в одной форме, поскольку RecipeIngredient
зависит от внешнего ключа Recipe, который еще не инициализирован? Нужно ли мне создавать пустой рецепт каждый раз, когда пользователь посещает страницу создания, чтобы сделать это возможным?
models.py:
class Recipe(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
image = models.ImageField(upload_to='image/', blank=True, null=True)
name = models.CharField(max_length=220) # grilled chicken pasta
description = models.TextField(blank=True, null=True)
class RecipeIngredient(models.Model):
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
name = models.CharField(max_length=220) # grilled chicken pasta
description = models.TextField(blank=True, null=True)
используйте formset
. formset
- это уровень абстракции для работы с несколькими формами на одной странице.
проверьте пример официальной документации