我正在尝试用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这个退货是这样的:
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'}}我的HTML看起来如下:
<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 %}上面的作品..。好样的,但我希望更好地控制如何和在哪里使用键值,因此,我不想盲目地遍历这个值,而是希望能够根据键得到一个值,类似于
vpc.get('CidrBlock') or vpc['CidrBlock'] to get the x.x.x.x/16 value.不知道我是不是说得够清楚。我在这里找不到这样的东西。
发布于 2017-03-29 21:59:31
Jinja支持字典访问语法,可以使用{{data['CidrBlock']}}和{{data['Name']}}访问字典中的特定值。
https://stackoverflow.com/questions/43103934
复制相似问题