Создание родительской и дочерней модели в одной форме 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 - это уровень абстракции для работы с несколькими формами на одной странице.

проверьте пример официальной документации

Вернуться на верх