我正在用Django模板的两勺制作Django应用程序。获取这个Heroku错误,我的Postgres生产设置关闭了吗?无法在Heroku上运行Django/Postgres应用程序设置
- OperationalError在/ 无法连接到服务器:连接被拒绝 是在主机“本地主机”(127.0.0.1)和接收端口5432 TCP/IP连接运行的服务器?
- 异常地点:
/app/.heroku/python/lib/python2.7/site-packages/psycopg2/__init__.py
- 领班开始工作正常
- Procfile:
web: python www_dev/manage.py runserver 0.0.0.0:$PORT --noreload
local.py设置:
数据库= { '默认':{ 的 '发动机':“Django的。 db.backends.postgresql_psycopg2' , 'NAME': 'WWW', 'USER': 'amyrlam', '密码': '*', 'HOST': '本地主机', '端口': '5432', }}
production.py设置:从上面注释掉的本地设置,添加标准Heroku的Django的东西:
进口dj_database_url DATABASES [ '缺省'] = dj_database_url.config()
SECURE_PROXY_SSL_HEADER =( 'HTTP_X_FORWARDED_PROTO', 'https' 时)
ALLOWED_HOSTS = [ '*']
个进口OS BASE_DIR = os.path.dirname(os.path.abspath则(文件)) STATIC_ROOT = 'staticfiles' STATIC_URL = '/静态/'
STATICFILES_DIRS =( os.path中。加入(BASE_DIR, '静态'), )
UPDATE:生产设置,试图改变:
进口dj_database_url 个资料库[ '默认'] = dj_database_url.config(默认值= os.environ [ “DATABASE_URL”])
(命名为我的Heroku色网址DATABASE_URL,在Heroku的配置相同的链路)
非常感谢,这对我工作。在wsgi.py和manage.py中,我明确提到了DJANGO_SETTINGS_MODULE作为myprojectname.settings.production。为了在本地运行,我运行'python manage.py runserver --settings = myprojectname.settings.local'。这看起来像一个好的工作流程? –
是的,那很好!这是最好的做法:) – rdegges
谢谢@ rdegges! –