Após ter realizado os passos da ultima vídeo aula sempre que criar um jogo novo esta mensagem aparece requisitando o "id" porem o mesmo não é chamado no método atualizar somente no criar.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Após ter realizado os passos da ultima vídeo aula sempre que criar um jogo novo esta mensagem aparece requisitando o "id" porem o mesmo não é chamado no método atualizar somente no criar.
Oi Luan tudo bem?
Poderia compartilhar o problema e a solução conosco, por gentileza. Assim no futuro se alguém passar pelo mesmo problema que você encontrará a solução.
Bom o erro foi o seguinte quando copiei a rota criar e modifiquei para que esta seja responsável pela atualização da edição dos jogos mudei somente o nome do método e esqueci de mudar o @app;route então o código ficou como o que esta logo abaixo, sempre que eu chamava o método criar como o mesmo possuía duas rotas gerava um erro a solução foi só corrigir o app.route de atualizar.
@app.route('/criar', methods=['POST', ])
def atualizar():
nome = request.form['nome']
categoria = request.form['categoria']
console = request.form['console']
jogo = Jogo(nome, categoria, console, id=request.form['id'])
jogo_dao.salvar(jogo)
return redirect(url_for('index'))
@app.route('/criar', methods=['POST', ])
def criar():
nome = request.form['nome']
categoria = request.form['categoria']
console = request.form['console']
jogo = Jogo(nome, categoria, console)
jogo_dao.salvar(jogo)
return redirect(url_for('index'))