1
resposta

imagem e informações que aparecem jutas

bom dia. Consegui todos os passos. esta tudo certo, rodando e salvando perfeitamente. mas eu gostaria de uma ajuda de voces. O curso não ensinou a rodar um script mostrando o jogo e a imagem. as pessoas tem acesso a imagem somente se for em editar e não por ex a pagina com a imagem e os dados do jogo. existe uma forma de colocar um card que puxa essa imagem automatico ao cadastrar com as informações?

grata

1 resposta

Oi Patricia!

Sobre a sua dúvida, claro que dá pra fazer isso!

No seu arquivo de rotas (app.py ou algo parecido), cria uma nova rota para mostrar os detalhes do jogo. Algo tipo:

from flask import render_template

@app.route('/jogo/<int:jogo_id>')
def detalhes_jogo(jogo_id):
    # Aqui você pega as informações do jogo do banco de dados usando o ID
    jogo = buscar_jogo_por_id(jogo_id)
    return render_template('detalhes_jogo.html', jogo=jogo)

DAÍ cria um arquivo HTML (detalhes_jogo.html) na pasta templates do seu projeto. Nesse arquivo, você pode criar um card que mostra a imagem e as informações do jogo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Detalhes do Jogo</title>
</head>
<body>
    <h1>{{ jogo.titulo }}</h1>
    <img src="{{ jogo.imagem_url }}" alt="{{ jogo.titulo }}">

    <p>{{ jogo.descricao }}</p>
    <!-- Adicione outras informações do jogo que você quer mostrar -->

    <a href="/">Voltar para a lista de jogos</a>
</body>
</html>

Quando você cadastrar um novo jogo, ao invés de apenas salvar, redirecione para a rota de detalhes do jogo recém-criado. Algo assim:

from flask import redirect, url_for

@app.route('/cadastrar_jogo', methods=['POST'])
def cadastrar_jogo():
    # Lógica para cadastrar o jogo no banco de dados
    # ...

    # Após cadastrar, redireciona para os detalhes do jogo
    return redirect(url_for('detalhes_jogo', jogo_id=novo_jogo.id))

Assim, quando alguém cadastrar um jogo, automaticamente vai ser redirecionado para a página de detalhes desse jogo, onde vai ver o card com imagem e informações.