CommandError:您似乎没有安装“psql”程序或在您的路径上

Val*_*hio 9 python django postgresql django-database django-settings

我使用的是 Windows,没有 virtualenv。我使用 Pip 安装了 psycopg2,还安装了最新版本的 PostgreSQL。

当我运行时./ manage.py dbshell,出现以下错误:

CommandError: You appear not to have the 'psql' program installed or on your path.
Run Code Online (Sandbox Code Playgroud)

当我跑步时./ manage.py dbshell psql,我得到这个:

usage: manage.py dbshell [-h] [--version] [-v {0,1,2,3}] [--settings SETTINGS]
                         [--pythonpath PYTHONPATH] [--traceback] [--no-color]
                         [--database DATABASE]
manage.py dbshell: error: unrecognized arguments: psql
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一些关于此错误的其他帖子但我不明白为什么这对我不起作用。我已正确配置所有设置,并安装所有正确的应用程序。

我的设置.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': '********',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:我没有将 Postgres 的 /bin 文件夹添加到我的 PATH 中。我刚刚做到了,现在正在工作。感谢丹尼尔·罗斯曼。

小智 5

在 Windows 中,我通过将其添加到 PATH 环境来解决:

C:\Program Files\PostgreSQL\12\bin

然后重新启动终端和IDE

路径 环境 PATH

如何Path在 Windows 中将文件夹添加到环境变量


小智 -2

你的机器上安装了 postgresql 吗?

除了:

pip install psycopg2
Run Code Online (Sandbox Code Playgroud)

你需要安装postgres:

sudo apt-get install postgres
Run Code Online (Sandbox Code Playgroud)