在Jinja(Django)中使用字典索引显示列表元素

阿比吉斯

我正在使用Django版本2.1.7,jinja2,并且尝试forloop.counter0在Jinja模板中使用的字典内迭代列表

MyCode Views.py

 def sample(request):
    datas= ['value1','value2','value3'] #list
    data={'key1':'val1','key2':'val2','key3':'val3'} #dictionary
    return render(request,'index.html',{'datalist':datas,'datadic':data})

Index.html(Jinja):

{% for dic in datadic %} 
    {{ dic }}
    {{ datalist.forloop.counter0 }} 
{% endfor %}
<!-- datalist.0 is only possible after research ,but is it constant 
for every iteration -->

预期产量:

val1 value1
val2 value2
val3 value3
丹尼尔·罗斯曼

您应该将数据压缩在视图中,并在模板中对其进行一次迭代。

zipped_data = zip(data.values(), datas)
return render(request, 'index.html', {'zipped_data': zipped_data})

...

{% for d1, d2 in zipped_data %}
   {{ d1 }} {{ d2 }}
{% endfor %}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章