如何从我的 Django 模板中的上下文中检索列表

How can I retrieve a list from context in my django template

我有一个模型房间的详细视图,在 get_context_data 方法中,我将来自第二个 model:Worker

的另一个对象查询集添加到我的上下文中
class RoomView(DetailView):
    template_name = 'detail.html'
    model = Room
    context_object_name = "room"

    def get_object(self):
        object = super(RoomView, self).get_object()
        if not self.request.user.is_authenticated():
            raise Http404
        return object

    def get_context_data(self, **kwargs):
        context = super(RoomView, self).get_context_data(**kwargs)
        context['workers'] = Worker.objects.all()
        print context
        return context

上下文看起来像:

{'workers': [<Worker: Michael Shchur, Backend>, <Worker: Toto Kutunyo, Backend>], u'object': <Room: Backend, id=1>, 'room': <Room: Backend, id=1>, u'view': <map.views.RoomView object at 0x7f257811dc10>}

但是我无法使用 {{room.workers}} 或

访问这个添加的对象列表
{% for worker in room.workers %}
    <tr>
        <td>{{worker.id}}</td>
        <td>{{worker.first_name}}</td>
        <td>{{worker.last_name}}</td>
        <td>{{worker.email}}</td>
    </tr>
{% endfor %}.

请多多指教,我能做吗

提供的上下文有一个键 workers 因此您需要使用此名称而不是 room.workers:

{% for worker in workers %}
<tr>
    <td>{{worker.id}}</td>
    <td>{{worker.first_name}}</td>
    <td>{{worker.last_name}}</td>
    <td>{{worker.email}}</td>
</tr>
{% endfor %}.