Для создания нескольких подкатегорий для категории в Django, можно воспользоваться связью ForeignKey или ManyToManyField. Вот как можно описать модели, чтобы реализовать данную структуру:
1. **Модель Категории**:
from django.db import models class Category(models.Model): name = models.CharField(max_length=100) def __str__(self): return self.name
2. **Модель Подкатегории с ForeignKey** (одна категория может иметь много подкатегорий):
from django.db import models from .models import Category class Subcategory(models.Model): name = models.CharField(max_length=100) category = models.ForeignKey(Category, on_delete=models.CASCADE) def __str__(self): return self.name
3. **Модель Подкатегории с ManyToManyField** (одна подкатегория может относиться к нескольким категориям):
from django.db import models from .models import Category class Subcategory(models.Model): name = models.CharField(max_length=100) categories = models.ManyToManyField(Category) def __str__(self): return self.name
В первом случае (с ForeignKey), каждая подкатегория привязана к одной категории. Это означает, что вы можете иметь много подкатегорий для одной категории. Во втором случае (с ManyToManyField), каждая подкатегория может относиться к нескольким категориям.
Выбор между этими двумя вариантами зависит от того, как вы планируете использовать ваши данные и ваши потребности в работе с ними.
Надеюсь, эти примеры помогут вам создать нужную вам структуру категорий и подкатегорий в вашем проекте Django.