我最近在 Heroku 上放了一个 Django 应用程序。主页看起来不错,但是当我尝试转到涉及查询的页面(例如p = Photo.objects.get(title=title)
)时,我收到此错误:
could not connect to server: Connection refused
Is the server running on host "localhost" and accepting
TCP/IP connections on port 5432?
按照这个答案,我做了$ heroku pg:promote HEROKU_POSTGRESQL_GREEN_URL
然后在我的settings.py中:
DATABASES = {'default': dj_database_url.config(default=os.environ['DATABASE_URL'])}
仍然有同样的错误,所以我试着看看这个结果(正如这个答案所暗示的):
$ heroku run python manage.py shell
>>> from django.conf import settings
>>> print settings.DATABASES['default']
{'TIME_ZONE': 'UTC', 'TEST_MIRROR': None, 'NAME': 'snorthway', 'OPTIONS': {},
'HOST': 'localhost', 'TEST_NAME': None, 'PASSWORD': '******', 'ENGINE':
'django.db.backends.postgresql_psycopg2', 'PORT': '', 'USER': 'snorthway',
'TEST_COLLATION': None, 'TEST_CHARSET': None}
在这一点上,我意识到我什至不知道我应该在其中寻找什么。我仍然不明白错误的含义,所以我不确定如何调试它。