首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从jinja模板访问字典数据

从jinja模板访问字典数据
EN

Stack Overflow用户
提问于 2022-01-31 12:32:34
回答 1查看 58关注 0票数 -1

我的视图中有一个dictionary,并且希望在我的前端呈现它的所有数据。

我的views.py

代码语言:javascript
复制
def index(request):
    leafVsImdtParents = {
        100: [{'childId': 1, 'childStructure': 'Leaf'}, {'childId': 2, 'childStructure': 'Intermediate'}],
        200: [{'childId': 3, 'childStructure': 'Intermediate'}, {'childId': 4, 'childStructure': 'Leaf'}],
        300: [{'childId': 5, 'childStructure': 'Leaf'}, {'childId': 6, 'childStructure': 'Intermediate'}],
        400: [{'childId': 7, 'childStructure': 'Intermediate'}, {'childId': 8, 'childStructure': 'Leaf'}],
    }
    return render(request,'index.html', {'leafVsImdtParents ': leafVsImdtParents })

在我的templete

代码语言:javascript
复制
<tbody>
    {% for key, value in leafVsImdtParents %}
    <tr>
        <td>
            {% if key != 0 %}
            <a href="{% url 'diagnosis:ruleTree' ruleId=key %}" class="text-dark fw-bolder text-hover-primary d-block fs-6">
                <span class="badge badge-light-info fs-7"> {{ key }} </span>
            </a>
            {% else %}
            <span class="badge badge-light-danger"> Root Node! </span>
            {% endif %}
        </td>
        <td>
            {% for j in value %}
            <a href="">
                {% if j.childStructure == 'Leaf' %}
                <span class="badge badge-light-success fs-7"> {{ j.childId }} </span>
                {% else %}
                <span class="badge badge-light-info fs-7"> {{ j.childId }} </span>
                {% endif %}
            </a>
            {% endfor %}
            
        </td>
    </tr>
    {% endfor %}
</tbody>

但它显示的错误如下:

代码语言:javascript
复制
ValueError at /ruleTreeGroup/
Need 2 values to unpack in for loop; got 1. 

请建议我如何解决这个问题,以及如何访问我前面的data字典中的所有数据。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-31 12:44:27

试着像这样

代码语言:javascript
复制
<tbody>
    {% for key, value in leafVsImdtParents.items %} # this line is changed
    <tr>
        <td>
            {% if key != 0 %}
            <a href="{% url 'diagnosis:ruleTree' ruleId=key %}" class="text-dark fw-bolder text-hover-primary d-block fs-6">
                <span class="badge badge-light-info fs-7"> {{ key }} </span>
            </a>
            {% else %}
            <span class="badge badge-light-danger"> Root Node! </span>
            {% endif %}
        </td>
        <td>
            {% for j in value %}
            <a href="">
                {% if j.childStructure == 'Leaf' %}
                <span class="badge badge-light-success fs-7"> {{ j.childId }} </span>
                {% else %}
                <span class="badge badge-light-info fs-7"> {{ j.childId }} </span>
                {% endif %}
            </a>
            {% endfor %}
            
        </td>
    </tr>
    {% endfor %}
</tbody>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70926021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档