Olá Alison, tudo bem com você?
Peço desculpas pela demora em lhe responder.
Realizando teste e simulações com o código enviado, é apresentado o, AttributeError: 'Query' object has no attribute 'senha'
. O erro está sendo levantado devido não ter sido feita a declaração do método first()
, no momento em que é criada a query para coletar o nome do usuário no banco de dados.
Sem declararmos o método first()
o valor atribuído à variável usuario
será uma solicitação (query) e não o seu resultado. Como queremos o resultado da query, devemos informar que queremos o primeiro resultado do filtro filter_by()
, usando assim o método first()
.
Para que o código funcione corretamente, adicione o método first()
a declaração da variável usuario
presente na função autenticar
do arquivo views.py. Deverá ficar da seguinte forma a declaração.
usuario = Usuarios.query.filter_by(nickname=request.form['usuario']).first()
Realizando a adição do método first()
será salvo na variável usuario
o primeiro resultado da solicitação, removendo assim o erro.
Após realizar a mudança, salve o arquivo views.py, inicie o servidor e realize um novo login.
Fico à disposição em caso de dúvidas.
Abraços e bons estudos.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!