1
resposta

HTML não está sendo lido

Prezados, boa noite,

Seguindo os passos a passos das aulas de Flesk, não consegui obter os mesmos resultados do vídeo, porém não consigo encontrar o meu erro, fiz a instalação do Flesk na versão indicada também. Segue abaixo o meu código no pycharm:

from flask import Flask, render_template

class Jogo:
    def __init__(self,nome, categoria, console):
        self.nome = nome
        self.categoria = categoria
        self. console = console

app = Flask(__name__)

@app.route('/inicio')
def ola():
    jogo_1 = Jogo('Super Mario', 'Plataforma', 'SNES')
    jogo_2 = Jogo('Pokemon Gold', 'RPG', 'GBA')
    lista = [jogo_1,jogo_2]
    return render_template('lista.html', titulo = 'Jogos', jogo = lista)

app.run()

Segue abaixo o meu código do arquivo lista.HTML:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Jogoteca</title>
  </head>
  <body>
    <div class="container">
        <div class="page-header">
            <h1>{{ titulo }}</h1>
        </div>
        <table class="table table-striped table-responsive table-bordered">
            <thead class="thead-default">
                <tr>
                    <th>Nome</th>
                </tr>
            </thead>
                <tr>
                    <tr>{{ jogo.nome }}</tr>
                    <tr>{{ jogo.categoria }}</tr>
                    <tr>{{ jogo.console }}</tr>
                </tr>
            </thead>
            <tbody>
            {% for jogo in jogos %}
                <tr>
                    <td>{{ jogo }}</td>
                </tr>
            {% endfor %}
            </tbody>
        </table>
    </div>
  </body>
</html>

Quando os executo, tenho o seguinte resultado: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Conseguem me ajudar?

Abraços

1 resposta
return render_template('lista.html', titulo = 'Jogos', jogo = lista)

Você tem de corrigir o parâmetro jogo para jogos