fbpx

Как заполнить таблицу с помощью словаря? (Django)

171 просмотра
0
0 Комментариев

Есть словарь, который возвращается в шаблон и имеет следующий вид:

dict = {"projects": Project.objects.all(), "errors": Error.objects.all(), "programmers": Developer.objects.all()}

Можно ли как-то вывести элемент каждого ключевого слова по очереди и при этом не использовать цикл для отдельного ключевого слова? На подобии:

{% for item in projects %}
  {{ print(projects.name) }}
{% endfor %}
 
{% for item in errors %}
  {{ print(errors.name) }}
{% endfor %}

Т.е. нужно, чтобы сначала вывелся первый элемент «projects», потом второй элемент «errors», потом третий элемент «programmers» и по новой.

Таким образом нужно заполнить таблицу:

<table>
  <tr>
     <td>{{ "Первый элемент projects" }}</td>
     <td>{{ "Первый элемент errors" }}</td>
     ...
   </tr>
   <tr>
     <td>{{ "Второй элемент projects" }}</td>
     <td>{{ "Второй элемент errors" }}</td>
     ...
   </tr>
   ...
</table>


Добавить комментарий

1 Ответы

Python Опубликовано 19.01.2019
0

Возможно стоит изменить возвращаемый словарь из в вью.

lst = zip(projects, errors, programmers)
return render_to_response('template.html', {'lst': lst, ... })

И в шаблоне использовать

{% for projects, errors, programmers in lst %}

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up