Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过Jinja访问字典中的值_Python_Jinja2 - Fatal编程技术网

Python 通过Jinja访问字典中的值

Python 通过Jinja访问字典中的值,python,jinja2,Python,Jinja2,在控制Jinja模板的Python文件中,我创建了一个字典: disp_list = {} for comp in requested_workspace.components: if comp.show_on_report_list: disp_list[comp.label] = {} disp_list[comp.label]['descrip'] = comp.description <table class="table table-ho

在控制Jinja模板的Python文件中,我创建了一个字典:

disp_list = {}
for comp in requested_workspace.components:
    if comp.show_on_report_list:
        disp_list[comp.label] = {}
        disp_list[comp.label]['descrip'] = comp.description
<table class="table table-hover">
        <tbody>
        {% for listing in disp_list %}
            <tr>
                <td>
                    {{ listing }}
                </td>
                <td>
                    {{ listing['descrip'] }}
                </td>
            </tr>
        {% endfor %}
        </tbody>
    </table>
在Jinja模板中,我想显示字典中的值:

disp_list = {}
for comp in requested_workspace.components:
    if comp.show_on_report_list:
        disp_list[comp.label] = {}
        disp_list[comp.label]['descrip'] = comp.description
<table class="table table-hover">
        <tbody>
        {% for listing in disp_list %}
            <tr>
                <td>
                    {{ listing }}
                </td>
                <td>
                    {{ listing['descrip'] }}
                </td>
            </tr>
        {% endfor %}
        </tbody>
    </table>

{%用于在显示列表中列出%}
{{listing}}
{{listing['descripp']}
{%endfor%}

{{listing}}显示,但{listing['descripp']}不会显示。我是否访问第二个值不正确?

控制Jinja模板的Python文件没有问题。我没有改变它。Jinja模板(HTML文件)是需要更改的地方

{% for item_name, values in disp_list.items() %}
    <tr>
        <td>
            {{ item_name }}
        </td>
        <td>
            {{ values['descrip'] }}
        </td>
    </tr>
{% endfor %}
{%for item_name,disp_list.items()中的值%}
{{item_name}}
{{values['descripp']}
{%endfor%}

使用.items()允许我使用元组分解并从字典中获取2个值。

您能给我们看一下dict数据和flask代码吗?显示的是什么:{{listing}和{{listing.descripp}?{{listing}变成了Bokeh示例和{listing.descripp}}。第二个应该显示一个文本字符串。