我正在尝试遍历django中模板中的上下文字典。到目前为止我还没有成功,我也不明白这是错误的。
这是我的观点:
def main_view(request):
cat_dict = {'Other': 0,
'Meeting': 0,
'Project 1': 0,
'Project 2': 0,
'Project 3': 0,
'Project 4': 0,
'Collaboration 1': 0,
'Collaboration 2': 0,
'Collaboration 3': 0,
'Process 1': 0
}
my_dict = gCalScriptMain.gCalScript(cat_dict)
return render(request, 'gCalData/gCalData_main.html', context=my_dict)
相反,这是我的模板:
{% extends "base.html" %}
{% block content %}
<div class="jumbotron index-jumbotron">
<h1 id="main-title">gCalData</h1>
<ul style="color:white">
{% for k,v in my_dict.items %}
<li>{{ k }}: {{ v }}</li>
{% endfor %}
</ul>
</div>
{% endblock %}
但我什么都没得到(甚至没有错误)。 如果我把它放在模板中,我唯一能做的就是检索一个值:
{% extends "base.html" %}
{% block content %}
<div class="jumbotron index-jumbotron">
<h1 id="main-title">gCalData</h1>
<p style="color:white">{{ Other }}</p>
</div>
{% endblock %}
答案 0 :(得分:1)
context
函数提供的 render
是您可以在模板中使用的变量字典。这意味着您可以使用Other
,Meeting
等
如果您想使用字典,则需要
...
return render(request, 'gCalData/gCalData_main.html', context={"my_dict": my_dict})
然后您可以在模板中迭代my_dict
。