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.