Визуализация словаря в шаблоне django - PullRequest
4 голосов
/ 26 апреля 2020

У меня есть предложение groupby, встроенное в представление django, и затем я намереваюсь отобразить словарь, созданный в шаблоне. Проблема здесь в том, что шаблон вместо отображения значений отображает повторяющиеся поля заголовка (скриншот прикреплен, так что это имеет больше смысла). Любая помощь будет оценена!

Вот представление

def did_count_region_groupby(request):
    region_carrier_groupby = DID_Definition_Model.objects.all().values('region_carrier').annotate(DID_Count=Count('region_carrier')).order_by('DID_Count')
    region_carrier_groupby_dict = {'region_carrier_groupby' : region_carrier_groupby}

    return render(request, 'MASTERHANDLER/did_count_region_groupby.html', region_carrier_groupby_dict)

, а вот шаблон

{% for key, value in region_carrier_groupby %}
        <tr>

            <td> {{key}}</td> <td>{{value}}</td>



        </tr>
        {% endfor %}

enter image description here

Ответы [ 2 ]

1 голос
/ 26 апреля 2020

values() в наборе запросов вернет список словарей. Таким образом, вы должны перебрать его как:

{% for listing region_carrier_groupby %}
    {% for key, value in listing.items %}
            <tr>

                <td> {{key}}</td> <td>{{value}}</td>



            </tr>
    {% endfor %}
{% endfor %}
0 голосов
/ 26 апреля 2020

Вы забыли добавить .items region_carrier_groupby.items

{% for key, value in region_carrier_groupby.items %}
            <tr>

                <td> {{key}}</td> <td>{{value}}</td>



            </tr>
{% endfor %}

Django Встроенная документация для

...