用户从列表页面中选择两台飞机进行比较。但是我收到以下错误: IndexError at / delta / list index超出范围 。
特别抱怨这条线:
{{1}}
我在这里出现了明显的错误吗?
查看
{{1}}
答案 0 :(得分:0)
您可能在查询中找不到任何记录
aircraft_to_compare = Aircraft.objects.filter(id__in=ids)
在访问该查询集中的项目时,检查aircraft_to_compare
的长度或使用try...except
阻止。
答案 1 :(得分:0)
/ delta / list index处的IndexError超出范围。表示您的模型没有找到数据。您可能希望查看数据库以查看是否存在Ids
。根据你的代码,没有错误,所以plz深入了解Aircraft.objects.filter(id__in=ids)
。
使用len(aircraft_to_compare)
来检查是否存在任何数据也是一种很好的方法。
希望这有帮助。
答案 2 :(得分:0)
在视图中,
您正在创建一个列表 data=[]
,然后在该列表中附加一些值。所以问题是当列表附加到其最大长度时,没有剩余空间可以附加更多“列表超出范围”的值。您可以尝试使用 data.clear() .