Output to Django template from EAV model

23 Views Asked by At

I can’t figure out how to display the value of the characteristics into a template from the model, where the characteristics are compared with the values. I got the value from the Product table, but how do I get it from the ProductProperty table?

class Product(models.Model):
   name = models.CharField(verbose_name='Наименование', max_length=128)
   name_eng = models.CharField(verbose_name='Наименование (англ.)', max_length=128)
   slug = models.SlugField(verbose_name='Слаг', max_length=128, unique=True, db_index=True, editable=False)
   category = models.ForeignKey(verbose_name='Категория', to=Category, on_delete=models.CASCADE)

class Property(models.Model):
   name = models.CharField(verbose_name='Наименование', max_length=128)

class ProductProperty(models.Model):
   product = models.ForeignKey(verbose_name='Продукт', to=Product, on_delete=models.CASCADE)
   property = models.ForeignKey(verbose_name='Характеристика', to=Property, on_delete=models.CASCADE)
   value_string = models.CharField(verbose_name='Текстовое значение характеристики', max_length=250, null=True, blank=True)
   value_integer = models.IntegerField(verbose_name='Числовое значение характеристики', null=True, blank=True)
   value_genres = models.ManyToManyField(verbose_name='Жанры', to=Genre, null=True, blank=True)

I tried to implement this through a for loop, but it didn't work

0

There are 0 best solutions below