我可以使用p['cover']['source']
在我的django python shell中访问字典。我也可以使用点表示法访问模板中的“source”,但是,当我在视图中尝试访问p['cover']['source']
时,我得到了一个keyError。我可以使用p.get('cover','none')
访问“封面”,但我需要获取p['cover']['source']
而我不知道如何访问它。请帮忙: - )
views.py
image_table = []
for n in likes:
link = n.facebook_id
p = graph.get_object(str(link))
#image = p['cover']['source'] //This returns KeyError
#image = p['cover'][0]['source'] //This returns KeyError = 0
image = p.get('cover','none')//This only returns the first dictionary
image_table.append(image)
答案 0 :(得分:0)
某些用户可能没有封面图片,导致访问字典时出现KeyError
。使用try / except块来防止错误:
try:
image = p['cover']['source']
except KeyError:
pass # or other alternative for those without cover picture