Как отобразить список списков в HTML с помощью Jinja2 - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь собрать данные футбольных игр в одну таблицу с помощью python3, jinja2 - на стилизованную страницу шаблона HTML.Я только начинающий в программировании и, возможно, допустил некоторую ошибку при передаче данных.

Я пытался распечатать результат, он выглядит нормально, как

mylist=[[['2019-04-27', '03:00'], ['liverpool', 'liverpool', 'EP', 'tag'], ['live']],
[['2019-04-27', '10:00'], ['GSW', 'LAC', 'NBA', 'tags', 'tags'], ['live1', 'live2']],
[['2019-04-27', '19:30'], ['hotspurs', 'WH', 'EP'], ['live']]]

, но когда я пытаюсьрендеринг HTML с помощью jinja2, например print(template.render(mylist)), который показывает

Traceback (most recent call last):
  File "Z:/学习/pythonLearning/zhibo8_v4.py", line 57, in <module>
    print(template.render(showListReady))
  File "C:\Program Files\Python37\lib\site-packages\jinja2\asyncsupport.py", line 76, in render
    return original_render(self, *args, **kwargs)
  File "C:\Program Files\Python37\lib\site-packages\jinja2\environment.py", line 1003, in render
    vars = dict(*args, **kwargs)
ValueError: dictionary update sequence element #0 has length 3; 2 is required

Я думаю, что это может быть что-то не так в моем шаблоне HTML, например

        <tbody>
        {% for game in showListReady %}
        {% for date, time, teamA, teamB, tags, broadcast in game %}
        <tr>
            <td class="firstColumn">
                <div class="dateClass">${date}</div>
                <div class="timeClass">${time}</div>
            </td>
            <td class="secondColumn">
                <span class="teamName">${teamA}</span>
                <span><img src="images/xxxx.png"></span>
                <span class="VS">VS</span>
                <span><img src="images/xxxx.png"></span>
                <span class="teamName">${teamB}</span>
                <span class="leagueName">${tags}</span>
            </td>
            <td class="thirdColumn">
                <span class="broadcast">${broadcast}</span>
              </td>
        </tr>
        {% endfor %}
        {% endfor %}

надеюсь, кто-то может дать мне несколько советов,пожалуйста * * 1013

1 Ответ

0 голосов
/ 26 апреля 2019

Возможно, попробуйте:

print(template.render(showListReady=showListReady)) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...