Pessoal, tudo bem? Estou no curso de Flask parte 01: aula 06. Quando entro no endereço : http://127.0.0.1:5000/login o codigo funciona normalemente. Quando coloco meu login e senha ele da o seguinte erro:
Not Found The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.
Como resolver isso?
from flask import Flask,render_template,request,redirect,session,flash
app = Flask(__name__)
app.secret_key = 'alura'
class Jogo:
def __init__(self,nome,categoria,console):
self.nome = nome
self.categoria = categoria
self.console = console
jogo1 = Jogo('Super Mario', 'Acao','SNES')
jogo2 = Jogo('Pokemon','RPG','GBA')
lista = [jogo1,jogo2]
@app.route('/')
def ola():
return render_template ('lista.html', titulo = 'JOGOS', jogos = lista)
@app.route('/novo')
def novo():
if 'usuario_logado' not in session or session['usuario_logado'] == None:
return redirect('/login?proxima=novo')
return render_template('novo.html', titulo='Novo jogo')
@app.route('/criar', methods=['POST'])
def criar():
nome = request.form['nome']
categoria = request.form['categoria']
console = request.form['console']
jogo = Jogo(nome,categoria,console)
lista.append(jogo)
return redirect('/')
@app.route('/login')
def login():
proxima = request.args.get('proxima')
return render_template ('login.html', proxima=proxima)
@app.route('/autenticar', methods=['POST',])
def autenticar():
if '123456' == request.form['senha']:
session ['usuario_logado'] = request.form['usuario']
flash(request.form['usuario'] + ' logou com sucesso!')
proxima_pagina = request.form['proxima']
return redirect('/ {}'.format(proxima_pagina))
else :
flash('Não logado, tente de novo!')
return redirect ('/login')
@app.route('/logout')
def logout():
session['usuario_logado'] = None
flash('Nenhum usuário logado!')
return redirect('/')
app.run(debug=True)
login.html
{% extends 'template.html' %}
{% block conteudo %}
<div class="container">
<br>
{% with messages = get_flashed_messages() %}
{% if messages %}
<ul id="messages" class="list_unstyled">
{% for message in messages %}
<li class="alert alert-success">{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
{% endwith %}
<h1>Faça seu login</h1>
<br>
<div class="form-group col-md-6 col-xs-4">
<form method="POST" action="/autenticar">
<input type="hidden" name="proxima" value= "{{ proxima or '/' }}">
<p><label>Nome de usuário:</label> <input class="form-control" type="text" name="usuario" required></p>
<p><label>Senha:</label> <input class="form-control" type="password" name="senha" required></p>
<p><button class="btn btn-primary" type="submit">Entrar</button></p>
</form>
</div>
</div>
{% endblock %}