Django在一个模板中有多个模型

时间:2016-01-25 03:00:26

标签: python django django-class-based-views

所以我在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'

提前谢谢你。

1 个答案:

答案 0 :(得分:1)

您的模板中只有语法错误。

{%site.name%}

应该是:

{{site.name}}

https://docs.djangoproject.com/en/1.9/topics/templates/#syntax