Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.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 Jinja2通过dict循环,控制使用的键:值_Python_Html_Flask_Jinja2 - Fatal编程技术网

Python Jinja2通过dict循环,控制使用的键:值

Python Jinja2通过dict循环,控制使用的键:值,python,html,flask,jinja2,Python,Html,Flask,Jinja2,我试图用HTML从作为dict传递到web的数据创建一个表 app.py: client = boto3.client('ec2') vpc_ids = client.describe_vpcs() for i in vpc_ids.get('Vpcs'): for tag in i.get('Tags'): if tag.get('Key') == 'Name': vpc_list[i.get('VpcId')] = {'CidrBlock':

我试图用HTML从作为dict传递到web的数据创建一个表

app.py:

client = boto3.client('ec2')
vpc_ids = client.describe_vpcs()
for i in vpc_ids.get('Vpcs'):
    for tag in i.get('Tags'):
        if tag.get('Key') == 'Name':
            vpc_list[i.get('VpcId')] = {'CidrBlock': i.get('CidrBlock'), 
            'Name': tag.get('Value')}
return vpc_list
这返回的dict如下所示:

vpc_list = {'vpc-1': {'CidrBlock': 'x.x.x.x/16', 'Name': 'a-vpc'},
            'vpc-2': {'CidrBlock': 'y.y.y.y/16', 'Name': 'b-vpc'},
            'vpc-3': {'CidrBlock': 'z.z.z.z/16', 'Name': 'c-vpc'},
            'vpc-4': {'CidrBlock': 'q.q.q.q/16', 'Name': 'd-vpc'}}
<div class="container">
{% if vpc_lists is defined %}
{% for vpc, data in vpc_lists.items() %}
<div class="row">
    <div class="col-md-1">
        <i class="fa fa-camera-retro fa-lg"></i>
    </div>
    <div class="col-md-3">
        {{vpc}}
    </div>
    {% for key,value in data.items() %}
    <div class="col-md-3">
        {{value}}
    </div>
    {% endfor %}
    <div class="col-md-2">
        <a href="/vpc/{{vpc}}">Link</a>
    </div>
</div>
{% endfor %}
{% endif %}
我的HTML如下所示:

vpc_list = {'vpc-1': {'CidrBlock': 'x.x.x.x/16', 'Name': 'a-vpc'},
            'vpc-2': {'CidrBlock': 'y.y.y.y/16', 'Name': 'b-vpc'},
            'vpc-3': {'CidrBlock': 'z.z.z.z/16', 'Name': 'c-vpc'},
            'vpc-4': {'CidrBlock': 'q.q.q.q/16', 'Name': 'd-vpc'}}
<div class="container">
{% if vpc_lists is defined %}
{% for vpc, data in vpc_lists.items() %}
<div class="row">
    <div class="col-md-1">
        <i class="fa fa-camera-retro fa-lg"></i>
    </div>
    <div class="col-md-3">
        {{vpc}}
    </div>
    {% for key,value in data.items() %}
    <div class="col-md-3">
        {{value}}
    </div>
    {% endfor %}
    <div class="col-md-2">
        <a href="/vpc/{{vpc}}">Link</a>
    </div>
</div>
{% endfor %}
{% endif %}

我不确定我是否说得够清楚。我在这里找不到这样的东西

Jinja支持字典访问语法,您可以使用
{data['CidrBlock']}
{data['Name']}
访问字典中的特定值。

非常感谢!这比我想象的要容易得多!