问题
I'm using Windows, no virtualenv. I have psycopg2 installed with Pip, and the latest version of PostgreSQL installed as well.
When I run ./ manage.py dbshell
, I get the following error:
CommandError: You appear not to have the 'psql' program installed or on your path.
When I run ./ manage.py dbshell psql
, I get this:
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
I have read a few other posts on this error like this but I don't understand why this is not working for me. I have all the settings properly configured, and all the proper apps installed.
My settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'postgres',
'USER': 'postgres',
'PASSWORD': '********',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
EDIT: I did not add Postgres's /bin folder into my PATH. I just did it and it is working now. Thanks to Daniel Roseman.
回答1:
For mac, run command brew install postgres
.
In case, your machine don't have brew installed, follow this to install brew. Or run command
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
回答2:
In Windows I solved by adding this to PATH environment:
C:\Program Files\PostgreSQL\12\bin
then restart terminals and IDEs
Path Environment PATH
How to add a folder to Path environment variable in Windows
回答3:
Is postgresql installed on your machine.
Apart from:
pip install psycopg2
you need to install postgres:
sudo apt-get install postgres
来源:https://stackoverflow.com/questions/47124297/commanderror-you-appear-not-to-have-the-psql-program-installed-or-on-your-pat