Django 一个模板中的多个模型
Django Multiple models in one template
所以我在 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'
提前谢谢你。
您的模板中存在语法错误。
{% site.name %}
应该是:
{{ site.name }}
https://docs.djangoproject.com/en/1.9/topics/templates/#syntax
所以我在 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'
提前谢谢你。
您的模板中存在语法错误。
{% site.name %}
应该是:
{{ site.name }}
https://docs.djangoproject.com/en/1.9/topics/templates/#syntax