提问人:Raghavan vmvs 提问时间:10/20/2023 更新时间:10/20/2023 访问量:28
包含单个字典的 Django 应用程序循环列表
Django app for loop through list containing a single dictionary
问:
我正在创建一个 Django 应用程序,以使用 json 使用 API 解析来自互联网的数据。结果以包含字典的列表的形式显示,如下所示
以下是视图页面中使用的代码
def home(request):
import requests
import json
####
api_request=requests.get("xyz...URL")
try:
api=json.loads(api_request.content)
except Exception as e:
api="Error"
return render(request, 'home.html',{"api": api})
我正在使用以下代码在主页上呈现 api。它完美呈现
{% extends 'base.html' %}
{% block content %}
<h1>Hello World!</h1>
{{api.values}}
{% endblock %}
输出采用包含字典的列表形式,如下所示
[{'A': 53875881, 'B': 'cl', 'CH': -0.38, 'CHP': -0.00216, 'CLP': 175.46}]
我想按如下方式获取这些值
A : 53875881
B : 'cl'
CH : -0.38
CHP: -0.00216
CLP: 175.46
我尝试了以下代码来遍历列表中包含的字典。我没有得到任何输出。只是一个空网页
{% extends 'base.html' %}
{% block content %}
{% if api %}
{% if api == "Error..." %}
check your ticker symbol
{% elif api != "Error..." %}
{% for element in api %}
{% for key, value in api.items %}
{{ key }}:{{ value }}
{% endfor %}
{% endfor %}
{% endif %}
{% endif %}
{% endblock %}
我也尝试了其他代码直接遍历列表。
{% extends 'base.html' %}
{% block content %}
{% if api %}
{% if api == "Error..." %}
check your ticker symbol
{% elif api != "Error..." %}
{% for key, value in api.items %}
{{ key }}:{{ value }}
{% endfor %}
{% endif %}
{% endif %}
{% endblock %}
我请求有人看一看并指导我。我无法弄清楚这个问题
答:
1赞
0urz4g
10/20/2023
#1
您的第一个代码似乎没问题,但您忘记在嵌套的 for 循环中使用变量。element
试试这个:
{% extends 'base.html' %}
{% block content %}
{% if api %}
{% if api == "Error..." %}
check your ticker symbol
{% elif api != "Error..." %}
{% for element in api %}
{% for key, value in element.items %}
{{ key }}:{{ value }}
{% endfor %}
{% endfor %}
{% endif %}
{% endif %}
{% endblock %}
评论
0赞
Raghavan vmvs
10/20/2023
会试试这个先生。
0赞
Raghavan vmvs
10/20/2023
谢谢。我可以要求简短解释为什么我的代码不起作用吗
1赞
0urz4g
10/20/2023
变量 “api” 是数组,变量 “element” 是数组中每个字典的变量。
0赞
Raghavan vmvs
10/20/2023
非常感谢。非常感谢
评论