1
resposta

Erro no projeto jogoteca - quero instalar o projeto em outro ambiente

Boa tarde!

Eu estava seguindo todos os passos que o professor estava ensinando e estava indo muito bem, então comecei a ter problemas de versão do Flask, tive que desinstalar o Flask e instalar de novo, mas não voltou a rodar bem, vi que muitas pessoas tiveram o mesmo problema. No final não consegui acompanhar os passos do professor. Gostaria de levar o projeto para um ambiente virtualizado (vitualenv) mas como posso fazer isso? minha duvida é, como posso levar esse projeto para outro ambiente? tenho que copiar a pasta, colar no novo ambiente e instalar o python, flask, mysql e quais pacotes mais e a versão? sei que faz parte da vida do desenvolvedor resolver esses problemas mas talvez seja legal ter alguma anotação do que temos que instalar e a versão para rodar esse projeto atualmente estou com essa versão:

Python 3.11.9
Flask 2.0.2
Werkzeug 2.0.2

e está dando esse erro ao tentar rodar o aplicativo

 Traceback (most recent call last):
  File "C:\Users\Fernando\PycharmProjects\jogoteca\jogoteca.py", line 2, in <module>
    from flask_sqlalchemy import SQLAlchemy
  File "C:\Users\Fernando\PycharmProjects\jogoteca\.venv\Lib\site-packages\flask_sqlalchemy\__init__.py", line 5, in <module>
    from .extension import SQLAlchemy
  File "C:\Users\Fernando\PycharmProjects\jogoteca\.venv\Lib\site-packages\flask_sqlalchemy\extension.py", line 22, in <module>
    from .session import _app_ctx_id
  File "C:\Users\Fernando\PycharmProjects\jogoteca\.venv\Lib\site-packages\flask_sqlalchemy\session.py", line 8, in <module>
    from flask.globals import app_ctx
ImportError: cannot import name 'app_ctx' from 'flask.globals' (C:\Users\Fernando\PycharmProjects\jogoteca\.venv\Lib\site-packages\flask\globals.py)
1 resposta

Tendo o arquivo requirements.txt, ele seria o suficiente para mudar de ambiente. Mudando você só cria um novo virtualenv

Eu não lembro se é: python ou py

python -m venv <nome-ambiente>

para instalar as dependências

pip install -r requirements.txt

caso precise criar o arquivo requirements.txt:

pip freeze > requirements.txt

Para ativar o virtualenv tem que navegar na pasta do env, e executar o script. Script.bat algo assim

Sobre os erros que está apresentando parece ser só problema de dependência mesmo, arrumando o ambiente ou instalando esses componentes globalmente deve resolver.

Espero que tenha ajudado de alguma forma.