Мне нужно отобразить некоторые данные из БД.Мне нужно отобразить OrderItem и все связанные OrderProperties (с FK) В представлении я делаю что-то вроде:
orderitems = OrderItem.objects.all().filter(order=order)
properties = []
for item in orderitems:
a = OrderItemDetail.objects.all().filter(orderitem=item)
b = []
for x in a:
c = [x.detail.property.name, x.detail.value, x.detail.price, x.detail.detail_price_unit]
b.append(c)
properties.append(b)
В конце у меня есть список свойств, которые мне нужны, а затем в шаблоне, который я используюих:
# orderitems loop - displaying item detail
# displaying the properties
{% for prop in properties %}
{% for x in prop %}
<big><b>{{x.0}}</b>: {{x.1}} (+{{x.2}}
{% if x.3 == "m" %}
€/MQ
{% endif %}
{% if x.3 == "p" %}
%
{% else %}
€
{% endif %}
)</big><br />
{% endfor %}
{% endfor %}
Это должно привести к выводу вроде: color: red (+0,0 € )
Все работает нормально, но когда есть 2 или более элементов порядка, я получаю каждое свойство, напечатанное в каждой записи (я хотел бы отобразить только связанные свойствак текущему элементу)
Было бы довольно легко, если бы я мог выполнить запрос в цикле (извлекая только те свойства, которые мне нужно отобразить в этом цикле цикла).Да, я мог бы создать html-элемент в python, но поскольку я использую шаблонизатор, он кажется довольно идиотским.
Знаете ли вы, как это сделать?
PS.я знаю, что имена переменных не имеют смысла, но мне нужно что-то короткое во время тестирования