我得到一个传递给我的Django模板的数组arr
。我想访问数组中数组的各个元素(例如arr[0]
,arr[1]
)等,而不是遍历整个数组。
有没有办法在Django模板中执行此操作?
答案 0 :(得分:288)
请记住,Django模板中的点符号用于Python中的四种不同表示法。在模板中,foo.bar
可以表示以下任何内容:
foo[bar] # dictionary lookup
foo.bar # attribute lookup
foo.bar() # method call
foo[bar] # list-index lookup
按顺序尝试它们,直到找到匹配项。因此foo.3
将为您提供列表索引,因为您的对象不是以3为键的dict,没有名为3的属性,并且没有名为3的方法。
答案 1 :(得分:134)
arr.0
arr.1
等
答案 2 :(得分:29)
您可以使用arr.0 arr.1访问序列元素,依此类推。有关详细信息,请参阅django书的The Django template system chapter。
答案 3 :(得分:3)
当您render
请求时coctext
提供一些信息:
例如:
return render(request, 'path to template',{'username' :username , 'email'.email})
您可以在模板上访问它,如下所示:
for variabels :
{% if username %}{{ username }}{% endif %}
for array :
{% if username %}{{ username.1 }}{% endif %}
{% if username %}{{ username.2 }}{% endif %}
你也可以在views.py
中命名数组对象,并且十个使用它:
{% if username %}{{ username.first }}{% endif %}
如果还有其他问题我想帮助你