Как построить форму в django на основе 3 моделей с отношениями "многие-ко-многим

Это мой первый опыт работы с django, и я застрял на создании формы. Модели, которые должны быть задействованы в форме, следующие:

models.py

class Ingredient(models.Model):
    name = models.CharField(max_length=100)
    id_category = models.ForeignKey(Category, on_delete=models.CASCADE)
    property = YAMLField()

    def __str__(self):
        return self.name

    class Meta:
        verbose_name_plural = "Ingredients"

class Category(models.Model):
    name = models.CharField(max_length=200)

    def __str__(self):
        return self.name

    class Meta:
        verbose_name_plural = "Categories"


class Inventory(models.Model):
    id_user = models.ManyToManyField(User)
    name = models.CharField(max_length=200)
    last_update = models.DateTimeField(auto_now=True)
    creation_date = models.DateTimeField(auto_now_add=True)
    ingredients = models.ManyToManyField(Ingredient, through='InventoryIngredient')

    class Meta:
        verbose_name_plural = 'Inventories'
        ordering = ['-creation_date']

class InventoryIngredient(models.Model):
    id_ingredient = models.ForeignKey(Ingredient, on_delete=models.CASCADE)
    id_inventory = models.ForeignKey(Inventory, on_delete=models.CASCADE)
    quantity = models.DecimalField(decimal_places=2, max_digits=10)
    measurement_unit = models.CharField(max_length=100)
    expiry_date = models.DateField()

Я не знаю, с чего начать реализацию формы. Я пытался найти что-то похожее, но не нашел ничего об управлении формами в случае отношений "многие-ко-многим" со сквозной таблицей.

На практике в моей форме должны быть атрибуты модели Ingredient(name, property) и атрибуты модели InventoryIngredient(quantity, measurement_unit, expiry_date), а также имя для Category.

Я прошу вас, если вы можете, пожалуйста, помочь мне с этим, по крайней мере, мне нужна основа, на которой можно реализовать мою форму.

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