ValueError в библиотеке Flask - PullRequest
       4

ValueError в библиотеке Flask

0 голосов
/ 10 января 2019

я пытаюсь получить данные из Python в HTML

ПИТОН app.py

from flask import Flask
app = Flask(__name__)

@app.route('/html.html')
def test_route():
   data=["tony","mika"]
   return render_template('html.html', data=data)

HTML html.html

<!DOCTYPE html>
<html>
<head>
    <title>test</title>
</head>
<body>
  {% for item in data %}
  <tr>
      <td>{{item[0]}}</td>
      <td>{{item[1]}}</td>
  </tr>
  {% endfor %}
</body>
</html>

он должен отображать имена, но я не знаю, почему он не работает

Ответы [ 3 ]

0 голосов
/ 10 января 2019

Ваш цикл for должен выглядеть следующим образом:

<tr>
  {% for item in data %}
    <td>{{item}}</td>
  {% endfor %}
</tr>

Поскольку вы выполняете итерации по массиву данных, item представляет отдельный элемент из массива.

0 голосов
/ 10 января 2019

Первая ошибка: вы не импортировали render_template:

from flask import Flask,render_template
app = Flask(__name__)

@app.route('/html.html')
def test_route():
   data=["tony","mika"]
   return render_template('html.html', data=data)

app.run()

Теперь внесите некоторые изменения в файлы html.html, которые должны находиться в папке шаблонов.

Структура каталогов

app.py
templates--> html.html

html.html file:

<!DOCTYPE html>
<html>
<head>
    <title>test</title>
</head>
<body>
  {% for item in data %}
  <tr>
      <td>{{item}}</td>
  </tr>
  {% endfor %}
</body>
</html>

теперь запустите ваш код и проверьте URL http://127.0.0.1:5000/html.html

0 голосов
/ 10 января 2019

Попробуйте изменить тело на

<body> {% for item in data %} <tr> <td>{{item}}</td> </tr> {% endfor %} </body>

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