Mesmo preenchendo os campos com valores válidos, o validate sempre retorna False
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!
Mesmo preenchendo os campos com valores válidos, o validate sempre retorna False
Estava tendo mesmo problema por aqui também, mas descobri a solução. Pelo visto o form do Flask-WTF, além de requerir os valores de jogo, categoria e console que nós definimos, também requer o campo de CSRF por padrão. Adicionar CSRF na aplicação e nos formulários é relativamente simples, primeiro vá em config.py e adicione essas linhas de código:
from flask_wtf.csrf import CSRFProtect
csrf = CSRFProtect(app)Depois, no formulário de novo, adicione isso (no caso sem as tags de form, só deixei elas para indicar onde o {{ ... }} deve ser colocado):
<form method="post">
{{ form.csrf_token }}
</form>E nos formulários ainda sem o FlaskForm (como o de login), adicione o seguinte input:
<form method="post">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/>
</form>Se eu não esqueci nada, isso deve resolver seu problema. Espero ter ajudado :) Segue a página da documentação de onde tirei as informações: https://flask-wtf.readthedocs.io/en/0.15.x/csrf/