首页 > 解决方案 > 使用 PyCharmCE 的 psycopg2 运行 Flask 应用程序的问题

问题描述

我正在配置一个 Flask 应用程序以使用 PostgreSQL,并且据我所知,我已经安装了所有必要的包和依赖项。从我的系统终端或从 virtualenv 运行我的“app.py”文件似乎可行。

当我尝试从 PyCharmCE 内的同一个 venv 中运行我的“app.py”文件时,就会出现此问题。

  File "/Users/kilgow/Desktop/seasonwork_code/venv/lib/python3.8/site-packages/flask_sqlalchemy/__init__.py", line 1027, in create_engine
    return sqlalchemy.create_engine(sa_url, **engine_opts)
  File "<string>", line 2, in create_engine
  File "/Users/kilgow/Desktop/seasonwork_code/venv/lib/python3.8/site-packages/sqlalchemy/util/deprecations.py", line 298, in warned
    return fn(*args, **kwargs)
  File "/Users/kilgow/Desktop/seasonwork_code/venv/lib/python3.8/site-packages/sqlalchemy/engine/create.py", line 560, in create_engine
    dbapi = dialect_cls.dbapi(**dbapi_args)
  File "/Users/kilgow/Desktop/seasonwork_code/venv/lib/python3.8/site-packages/sqlalchemy/dialects/postgresql/psycopg2.py", line 793, in dbapi
    import psycopg2
ModuleNotFoundError: No module named 'psycopg2'

(<class 'ModuleNotFoundError'>, ModuleNotFoundError("No module named 'psycopg2'"), <traceback object at 0x104b8fb00>)

任何想法都会受到赞赏,因为我不明白为什么这个问题只发生在 PyCharm 中。如果有任何我不知道的操作系统特定问题,我正在使用 macOS。

标签: pythonpostgresqlflasksqlalchemypsycopg2

解决方案


使用模块创建虚拟环境通常是一个好习惯。之后,安装所有软件包。Pycharm 通常会为您创建一个虚拟环境,因此在安装软件包之前,请确保您的虚拟环境处于活动状态。对于psycopg2未找到的情况,您可以通过而不是psycopg2安装来解决psycopg2-binary


推荐阅读