我使用的是Django 2.1.7版本,jinja2,并且我尝试在Jinja模板中使用information.js
来迭代字典中的列表。
MyCode Views.py :
forloop.counter0
Index.html(Jinja):
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})
预期输出:
{% for dic in datadic %}
{{ dic }}
{{ datalist.forloop.counter0 }}
{% endfor %}
<!-- datalist.0 is only possible after research ,but is it constant
for every iteration -->
答案 0 :(得分:2)
您应该将数据压缩到视图中,并在模板中对其进行一次迭代。
INDEX
...
#include <cstdlib>
template <typename T> struct TClass {
template<std::size_t INDEX> void operator()() {}
};
template <typename FOR> void bar() {
//...
}
template <typename T> void foo() {
bar<TClass<T>>(); //Does compile
}
答案 1 :(得分:1)
根据您的代码“数据”已设置,并且不能迭代为 dict 。但是一般而言,迭代应该看起来像这样
{% for key, value_list in dictionary.items() %}
{% for list_item in value_list %}
{{ list_item }}
{% endfor %}
{% endfor %}