我尝试将我的postgres数据库迁移到Heroku以获取django应用程序。在我的settings.py文件中,我有以下内容,如Heroku教程所示:
import dj_database_url
DATABASES = {'default': dj_database_url.config()}
但是,当我运行heroku run python manage.py syncdb
时,我收到以下错误:
django.db.utils.OperationalError: could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
我错过了什么?提前谢谢!
答案 0 :(得分:1)
事实证明问题是我在我的项目的设置文件夹中有另一个名为local.py的文件。树如下:
├── microblog
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── settings
│ │ ├── base.py
│ │ ├── base.pyc
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── local.py
│ │ └── local.pyc
│ ├── settings.pyc
│ ├── urls.py
│ ├── urls.pyc
│ ├── wsgi.py
│ └── wsgi.pyc
├── Procfile
└── requirements.txt
由于我正在关注Django Tutorial入门,我在local.py文件中有以下内容:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': '<user>',
'PASSWORD': '<pwd>',
'NAME': '<name>',
'HOST': 'localhost',
}
}
这导致了这个问题。我尝试将文件添加到我的.gitignore中,但这并不起作用。解决方案是实际评论这些线。
答案 1 :(得分:0)
我遇到了同样的问题。评论local_settings
内容解决了这个问题。