python - 在 Django 中,为什么错误“TypeError at / string indices must be integers”?
问题描述
我正在尝试学习如何在 Django 中保存来自 kraken api 的 json 内容的一部分。通过stackoverflow上的几个例子我想出了这个代码:
视图.py
from django.shortcuts import render
from meal_app.models import Kraken
import requests
def get_krakens(request):
all_krakens = {}
url ='https://api.kraken.com/0/public/Assets'
response = requests.get(url)
data = response.json()
for i in data:
kraken_data = Kraken(
name = i['altname']
)
kraken_data.save()
all_krakens = Kraken.objects.all().order_by('-id')
return render (request, 'krakens/kraken.html', { "all_krakens":
all_krakens} )
我该如何解决这个错误?我的 json 在我的控制台中可见,但我无法访问值“altname”。您的帮助将不胜感激。
/Users/davidmoreira/Documents/crypto/djangokrakenapi/meal_project/meal_app/views.py, line 14, in get_krakens
name = i['altname']
解决方案
您的“i”是字符串的形式。您需要先将其转换为对象。使用i = json.loads(i)
推荐阅读
- html - jQuery:当 javascript 不可用时,下拉菜单将被扩展
- java - Android Oreo+ 中的 AlarmManager 和 BroadcastReceiver
- snowflake-cloud-data-platform - 如何在不中断共享的情况下通过 Azure 数据工厂“复制数据”加载数据?
- swift - 您如何设置货币标签以显示较小的美分字体?
- excel - VB.net 项目的导出到 Excel 功能在混淆后停止工作
- jquery - 如何使用它们之间的分隔线调整两个 div 的大小?
- python - 使用 GCN-LSTM 为图表示的场景生成描述
- python - 为什么不显示 tkinter 窗口?
- c# - 如何在 C# 中验证 PowerShell 脚本语法?
- java - 如何在 Hadoop SequenceFile 中找到值?