@Nulltiton

Почему происходит ошибка при выводе информации на страницу jinja?

Хочу вывести информацию из БД на страницу
Python-скрипт:
@app.route('/')
def index():
    if 'username' not in session:
        return redirect(url_for('login_controller.login'))
    
    users = User.query.all()
    results = [{'id': user.id, 'login': user.login, 'password': user.password,
                'full_name': user.full_name, 'phone': user.phone, 'email': user.email} for user in users]
    return render_template("index.html", users=results)


index.html:
<table border="1">
        <tr>
            <th>ID</th>
            <th>Логин</th>
            <th>Пароль</th>
            <th>ФИО</th>
            <th>Телефон</th>
            <th>Email</th>
            <th>Редактировать</th>
            <th>Удалить</th>
        </tr>
        {% for user in users %}
        <tr>
            <td>{{ user['id'] }}</td>
            <td>{{ user['login'] }}</td>
            <td>{{ user['password'] }}</td>
            <td>{{ user['full_name'] }}</td>
            <td>{{ user['phone'] }}</td>
            <td>{{ user['email'] }}</td>
            <td><a href="{{ url_for('edit_user', id=user[0]) }}">Редактировать</a></td>
            <td><a href="{{ url_for('drop_user', id=user[0]) }}">Удалить</a></td>
        </tr>
        {% endfor %}
    </table>


Получаю ошибку: UndefinedError jinja2.exceptions.UndefinedError: dict object has no element 0 в строке
return render_template("index.html", users=results)

Подскажите, как исправить?
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Everything_is_bad
А с какого перепуга ты вдруг стал делать user[0], хотя до этого обращался к нему как в словарю? или ты основ не знаешь?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы