所以我在Django中有一个仪表板页面,我想要显示的信息不仅仅是一个模型。我已经发现我可以通过覆盖get_context_data
函数向上下文对象添加更多信息。但是知道我不知道如何访问模板中的信息。以下是我的view.py
。
class StudyDashboard(generic.ListView):
template_name = 'studies/studydashboad.html'
context_object_name = 'study_list'
queryset = Study.objects.all()
def get_context_data(self, **kwargs):
context = super(StudyDashboard, self).get_context_data(**kwargs)
context['sites'] = StudySite.objects.all()
return context
以下是模板标记:
<div class="box-body">
{% for site in sites %}
<p>{% site.name %}</p>
{% endfor %}
</div>
这是我得到的错误:
TemplateSyntaxError at /studies/
Invalid block tag: 'site.name', expected 'empty' or 'endear'
提前谢谢你。
答案 0 :(得分:1)
您的模板中只有语法错误。
{%site.name%}
应该是:
{{site.name}}
https://docs.djangoproject.com/en/1.9/topics/templates/#syntax