Объединенный тег шаблона django печатает объединенную строку вместо значения - PullRequest
0 голосов
/ 03 мая 2019

Я пытаюсь объединить группировщик шаблонов django со строкой, чтобы все это можно было использовать в качестве тега шаблона.

Вот мой шаблон:

    {% block content %}
    REPORT:
    </br>
    {% regroup context by dealid as deal_list %}
        {% for dealid in deal_list %}
        {{dealid.grouper}}
            {% regroup dealid.list by inventory_status as stone_list%}
            {% for inventory_status in stone_list %}
                {{inventory_status.grouper}}
                <table>
                    <thead>
                        <tr>
                        <th>StoneID</th>
                        <th>Ct</th>
                        <th>Cost</th>
                        </tr>
                    </thead>
                    <tbody>
                        {% for stone in inventory_status.list %}
                        <tr>
                        <td>{{ stone.stoneid }}</td>
                        <td>{{ stone.ct_in|floatformat:2 }}</td> 
                        <td>{{ stone.cost_purchase|prepend_dollars }}</td>
                        </tr>
                        {% endfor %}
                    {% endfor %}
                </tbody>
                </table>
PROBLEM --->    <b>Subtotal: {{dealid_id.grouper WITH VARIOUS CONCATENATIONS}} <--</b> 
               </br>
            </br>
        {% endfor %}
    {% endblock content %}

I 'я пробовал:

Subtotal: {% with dealid_id.grouper|subtotalT as t %} {{ t }} {% endwith %} - get the string printed 

и

Subtotal: {{"totals."|add:dealid_id.grouper|stringformat:"a/s/r"|add:".Sold.sum_by_deal"}} - get just the last part of the string

, но я выводил только строку:

Subtotal: totals.33.Sold.sum_by_deal, for example
which, by the way, works when hardcoded:
Subtotal: {{totals.33.Sold.sum_by_deal}}

Я также пытался создать пользовательский фильтр:

@register.filter
def subtotalT(s1):
    return 'totals.'+str(s1)+'.Sold.sum_by_deal'
    # https://stackoverflow.com/questions/37933259/how-to-use-django-template-tag-within-another-tag

и попытался использовать его так:

Subtotal: {{dealid_id.grouper|subtotalT}} - get the string printed

, но, опять же, вместо значения выводится строка.

Я что-то упустил?Это не выполнимо?Я был бы очень признателен за чье-либо понимание ... Спасибо!

...