Отображение переменной контекста в таблице HTML

#html #html-table

Вопрос:

То, что я пытаюсь сделать, — это заполнить html-таблицу тем же количеством строк, что и записи в моем словаре. Я передаю элементы своего словаря в качестве контекстной переменной в html. Я могу показать элементы моего словаря следующим образом:

 {% for key,value in top_items.items %} lt;ulgt;{{ key }}lt;/ulgt; {% endfor %}  

Но когда я пытаюсь вставить его в таблицу для создания строк таблицы, как показано ниже, это не работает. Кажется, это ставит их всех в один ряд. Вместо того, чтобы создавать новую строку для каждого элемента.

 lt;table class="u-half-width"gt;  lt;theadgt;  lt;trgt;  lt;thgt;Columnlt;/thgt;  lt;thgt;Detailslt;/thgt;  lt;/trgt;  lt;/theadgt;  lt;tbodygt;  lt;trgt;  {% for key,value in top_items.items %}  lt;trgt;{{ key }}lt;/trgt;  {% endfor %}  lt;/trgt;  lt;/tbodygt; lt;/tablegt;  

Комментарии:

1. Что это за система шаблонов? По-моему, это похоже на жидкость…

2. chartsjs-это шаблон

3. ChartJS-это библиотека диаграмм, а не библиотека шаблонов HTML. Где и как вы это видите?

4. ах, я использую django

Ответ №1:

Ваш HTML недействителен; вы не можете вложить a lt;trgt; в другой lt;trgt; , и у вас нет никаких lt;tdgt; / lt;thgt; элементов.

Попробуй:

 lt;tbodygt;  {% for key,value in top_items.items %}  lt;trgt;  lt;th scope="row"gt;{{ key }}lt;/thgt;  lt;tdgt;{{ value }}lt;/tdgt;  lt;/trgt;  {% endfor %} lt;/tbodygt;  

Комментарии:

1. Спасибо, это сработало идеально.