Olá, Ramon! Tudo bem?
Quando você menciona que ao clicar no botão de login aparece a mensagem "Not Found", isso sugere que o atributo action
da tag form
em seu arquivo login.html
pode estar apontando para uma URL que não foi definida corretamente nas rotas do seu arquivo views.py
.
Para resolver esse problema, você deve verificar se a URL especificada no action
do formulário de login corresponde exatamente a uma das rotas definidas no views.py
. Aqui está um exemplo prático de como você pode configurar isso:
No seu arquivo login.html
, certifique-se de que o form
tenha o atributo action
apontando para a rota correta. Por exemplo:
<form method="POST" action="/login">
<!-- Campos do formulário -->
</form>
No seu arquivo views.py
, você deve ter uma rota /login
que lide com o método POST. Algo assim:
@app.route('/login', methods=['POST'])
def login():
form = FormularioUsuario(request.form)
if form.validate_on_submit():
# Lógica de autenticação
return redirect(url_for('index'))
return render_template('login.html', form=form)
Certifique-se de que, após o login ser efetuado com sucesso, a aplicação redirecione para uma rota válida, como index
. No exemplo acima, redirect(url_for('index'))
redireciona para a rota index
, que deve estar definida em seu views.py
.
Verifique também se todos os imports necessários estão corretos e se o objeto form
está sendo passado corretamente para o template no contexto do render_template
.
Se após essas verificações o problema persistir, recomendo que compartilhe comigo o seu código para que assim eu possa realizar testes a fim de identificar o porquê esse problema está acontecendo.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.