Вывод в шаблон Django из модели EAV

Я не могу понять, как вывести значение характеристик в шаблон из модели, где характеристики сравниваются со значениями. Я получил значение из таблицы Product, но как мне получить его из таблицы ProductProperty?

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)

Я пытался реализовать это через цикл for, но это не сработало

Чтобы отобразить значения характеристик из таблицы ProductProperty в шаблоне, необходимо передать соответствующие данные в контекст шаблона из представления. Этого можно добиться, запросив таблицу ProductProperty, относящуюся к конкретному товару, и передав эти данные в шаблон.

from django.shortcuts import render
from .models import Product, ProductProperty

def product_detail(request, product_id):
    product = Product.objects.get(pk=product_id)
    product_properties = ProductProperty.objects.filter(product=product)

    return render(request, 'product_detail.html', {'product': product, 'product_properties': product_properties})
Вернуться на верх