我正在尝试使用Heroku,Django和virtualenv配置本地开发环境。当推送到Heroku主机时,一切似乎都有效,但在本地,我似乎无法连接到Heroku提供的开发Postgre数据库。
根据说明,我在settings.py中添加了以下内容:
import dj_database_url
DATABASES['default'] = dj_database_url.config()
但是在本地运行时似乎没有调用它。获得以下例外:
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
甚至可以从Django的本地实例连接到Heroku托管开发Postgre?如果是的话,我错过了什么?
谢谢!
答案 0 :(得分:3)
事实证明这是相对简单的......
dj_database_url.cofig()采用默认参数。关于heroku的数据库信息可以在这里找到: https://postgres.heroku.com/databases/
如果您的数据库信息和凭据如下: 主持somehost.amazonaws.com 数据库somedb 用户foo 港口5432 密码栏
然后settings.py条目应如下所示:
import dj_database_url
DATABASES['default'] = dj_database_url.config(default='postgres://foo:bar@somehost.amazonaws.com:5432/somedb')
如果您也使用本地Postgre设置,则相同步骤。