通过在Django模板中的索引引用列表项?
这可能很简单,但我环顾四周,找不到答案。 从Django模板的列表中引用单个项目的最佳方法是什么?
换句话说,我该如何在模板语言中做相同的{{ data[0] }} ? 
谢谢。
 它看起来像{{ data.0 }} 。 请参阅variables和查找 。 
更好的方法:自定义模板filter: https : //docs.djangoproject.com/en/dev/howto/custom-template-tags/
如在模板中获取List [x]:
在模板中
 {% load index %} {{ List|index:x }} 
templatetags / index.py
 from django import template register = template.Library() @register.filter def index(List, i): return List[int(i)] 
 如果List = [['a','b','c'], ['d','e','f']] ,您可以使用{{ List|index:x|index:y }}模板来获取List[x][y] 
它适用于“for”
 {{ List|index:forloop.counter0 }} 
经过testing,效果很好^ _ ^
  {{ data.0 }}应该有效。 
 假设你写了data.obj django试图data.obj和data.obj() 。 如果他们不工作,它会尝试data["obj"] 。 在你的情况下, data[0]可以写成{{ data.0 }} 。 但是我build议你在视图中提取data[0]并作为单独的variables发送。 
join答复WeizhongTu
它适用于“for”
 {{ List|index:forloop.counter0 }} 
@ jennifer06262016,你绝对可以添加另一个filter来返回Django Queryset中的对象。
 @register.filter def get_item(Queryset): return Queryset.your_item_key 
在这种情况下,你可以在你的模板中input类似这样的{{Queryset | index:x | get_item}}来访问一些字典对象。 这个对我有用。