class AbsPropModel(models.Model):
""" Свойства продуктов"""
name = models.CharField(verbose_name="Название свойства", max_length=100)
product = models.ForeignKey(
ProductModel,
verbose_name="Продукт",
related_name="%(class)s",
null=True,
on_delete=models.SET_NULL)
class Meta:
abstract = True
def
str(self):
return
self.nameclass PropIntModel(AbsPropModel):
""" Числовое свойство товара с плавающей запятой"""
value = models.FloatField(
verbose_name="Числовое значение",)
class Meta:
verbose_name = "Числовое свойство товара"
verbose_name_plural = "Числовые свойства товара"
class PropStrModel(AbsPropModel):
""" Строковое свойство товара """
value = models.CharField(verbose_name="Строковое значение", max_length=200)