Разные характеристики в зависимости от категории/подкатегории
Пишу мелкий проект магазина - барахолки, где стоит реализовать категории, подкатегории и продукты. Получается много веток из каждой категории/подкатегории, но если для них всего одно поле - name, то у продуктов естественно характеристики разные. Если просто строить с одним поле name, выходит так:
class Category(models.Model):
parent_category = models.ForeignKey('self', on_delete=models.CASCADE, null=True, blank=True)
name = models.CharField(max_length=25, verbose_name='Название')
def __str__(self):
return self.name
class SubCategory(models.Model):
category = models.ForeignKey(Category, on_delete=models.CASCADE, verbose_name='Категория')
name = models.CharField(max_length=25, unique=True, verbose_name='Название')
def __str__(self):
return self.name
class Product(models.Model):
subcategory = models.ForeignKey(SubCategory, on_delete=models.CASCADE, verbose_name='Подкатегория')
name = models.CharField(max_length=25, unique=True, verbose_name='Название')
def __str__(self):
return self.name