3
respostas

[Bug] Erro após instalar o Werkzeug

Estou enfrentando esse erro após instalar o werkzeug e ter feito praticamente todas as soluções possíveis no fórum, e nenhuma resolveu, tentei reinstalar algumas versões das bibliotecas e tudo está dando no mesmo resultado.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Bom dia, Fellipe! Como vai?

Esse erro que está relacionado com a biblioteca do Werkzeug, normalmente acontece quando é utilizado uma versão da biblioteca que está depreciada ou que não tem compatibilidade com a versão do Flask que está sendo utilizada.

Imagino que por estar em um módulo bem avançado do curso o seu problema não é com a versão do Flask, então precisarei que você compartilhe comigo todo o seu projeto, para que eu faça testes para identificar onde esse erro está sendo causado. Envie através do GitHub ou Drive do Google.

Ah, antes de compartilhar, peço que rode o comando pip freeze > requirements.txt, assim será criado um arquivo de texto com todas as bibliotecas e suas versões.

Fico no aguardo e à disposição

Coloquei meu projeto no github, aqui está o link - https://github.com/Flibits/Jogoteca

Bom dia, Felipe!

Vou apresentar os problemas separadamente para você entender melhor.

Primeiro sobre o Werkzeug, a versão instalada durante a aula é bem antiga comparada com a usada atualmente, sem falar que atualmente o Werkzeug já é instalado juntamente com o Flask, logo acaba sendo desnecessário instalar ele novamente. Segue uma solução para o problema de versões:

bcrypt==4.1.2
blinker==1.7.0
click==8.1.7
colorama==0.4.6
Flask==3.0.2
Flask-Bcrypt==1.0.1
Flask-Login==0.6.3
Flask-SQLAlchemy==3.0.3
Flask-WTF==1.2.1
greenlet==3.0.3
itsdangerous==2.1.2
Jinja2==3.1.2
MarkupSafe==2.1.3
mysql-connector-python==8.0.28
mysqlclient==2.2.4
protobuf==4.25.2
SQLAlchemy==2.0.27
typing_extensions==4.9.0
Werkzeug==3.0.4
WTForms==3.1.2

Atualize o seu requirements.txt para conter as versões e bibliotecas que mostrei acima.

Agora sobre o erro apresentado no seu print, ele acontece quando tentamos fazer login com uma senha criptografada e que será comparada com a senha do banco, também criptografada, mas usando um salt diferente, a qual é o caractere usado na criptografia para deixar a senha segura.

De maneira geral, ou a senha cadastrada no banco não está criptografada, ou foi criptografada usando outro padrão. Isso me leva a pensar que você não rodou o arquivo prepara_banco.py antes de tentar realizar login novamente.

Então, minha solução para esse problema é que você rode o arquivo prepara_banco.py, assim será criado um novo usuário com a sua senha criptografada.

Espero que isso resolva o seu problema!