You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django新手咨询:API返回多值后在HTML展示字段是否需改models.py?

解答:无需修改models.py,直接在视图+模板处理即可

嘿,作为Django新手完全不用纠结models的问题~你这个需求是展示外部API返回的临时数据,根本不需要修改models.py(那是用来定义数据库表结构的,咱们现在不用存数据到库),直接在视图里处理数据,再传给模板用for循环渲染就行,给你一步步的示例:

第一步:在视图里获取并处理API数据(views.py)

首先得确保你装了requests库(用来调用外部API),没装的话先跑pip install requests。然后写视图函数:

from django.shortcuts import render
import requests

def api_data_view(request):
    # 调用外部API,替换成你的实际API地址
    api_url = "https://your-external-api-url.com/your-endpoint"
    response = requests.get(api_url)
    # 解析返回的JSON数据
    api_data = response.json()
    # 提取需要的result列表(就是你拿到的那组包含name和Type的数据)
    data_list = api_data.get('result', [])
    
    # 把数据传给模板
    return render(request, 'api_display.html', {'data_list': data_list})

第二步:在HTML模板里用for循环渲染(api_display.html)

用Django的模板语法遍历data_list,按照你要的格式展示name和Type:

<!DOCTYPE html>
<html>
<head>
    <title>API数据展示</title>
</head>
<body>
    <div class="api-content">
        {% for item in data_list %}
            {{ item.name }} {{ item.Type }}
            {% if not forloop.last %}、{% endif %}
        {% endfor %}
    </div>
</body>
</html>

这样渲染出来的结果就是你想要的:ABC True、DEF False

额外说明

如果之后你需要把这些API数据持久化到数据库里,那才需要去models.py定义对应的模型,然后在视图里把数据存进去。但就当前的纯展示需求而言,完全不需要碰models~

内容的提问来源于stack exchange,提问作者Stack Ray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:04:11