Django формы: динамическое добавление новых полей ввода на основе уже введенных данных

Я новичок в django. Я создал простую модель и теперь моя цель - создать форму, в которую я хотел бы ввести информацию о конкретных объектах. В данном примере у меня есть модель, которая содержит два типа совершенно разных продуктов. Общими являются только название и цвет. Есть ли в django способ отобразить форму, которая включает только общие поля. В данном примере название, товары и категория, а после выбора категории вывести дополнительные поля, которые соответствуют выбранной категории? В моем примере я хотел бы расширить форму, чтобы она отображала размер и форму, если выбрана шляпа, и модель и возраст, если выбрана машина

model.py

class Products (models.Model):
      products=(('1','hats'),('2','car'))
      name=models.CharField( max_length=30)
      category=models.TextField(choices=products,blank=True, null=True)
      color = models.CharField(max_length=40, blank=True, null=True, default='')
      model=models.CharField(max_length=40, blank=True, null=True, default='')
      age=models.CharField(max_length=40, blank=True, null=True, default='')
      size = models.CharField(max_length=40, blank=True, null=True, default='')      
      shape= models.CharField(max_length=40, blank=True, null=True, default='')

forms.py

class ProductsForm (ModelForm):
    class Meta:
        model = Products
        fields = ['name','category', 'color', 'model','shape','size']



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