Python Django 1.8在heroku上部署项目时发生数据库错误
我有一个Python Django 1.8在heroku上部署项目时发生数据库错误,python,django,postgresql,heroku,django-database,Python,Django,Postgresql,Heroku,Django Database,我有一个local\u settings.py,其中包含本地postgre数据库的数据库设置。我的settings.py数据库如下所示 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': '', 'USER': '', 'PASSWORD': '', 'HOST': '', 'PORT': '',
local\u settings.py
,其中包含本地postgre数据库的数据库设置。我的settings.py
数据库如下所示
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': '',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
ALLOWED_HOSTS = ['*']
import dj_database_url
DATABASES['default'] = dj_database_url.config(default='postgres://mylocalusername:mylocalpass@OK@localhost/mylocaldb')
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
在部署时,我使用heroku插件创建了一个新数据库:create heroku postgresql:hobby dev,在导入本地数据库之前,我尝试运行“heroku run python manage.py migrate”,但出现了以下错误-
这就是我得到的错误
raise ImproperlyConfigured("settings.DATABASES is improperly configured. "
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for moredetails.
我还尝试在创建数据库后运行以下命令
heroko config
heroko config:add DATABASE_URL={#the database url}
首先,本地设置可能不在您的git repo中,因此不会上载到Heroku:它是您应该编辑的main settings.py。其次,用户非常清楚如何使用
dj数据库url
设置部署的db位置;您遇到了什么问题?我所做的所有编辑都在settings.py
中。关于dj_database_url,我已经检查了这个答案,它提供了一个解决方案,但这不起作用。您可以共享您对settings.py
所做的编辑吗,具体包括dj_数据库url
code?@bimsapi我已经编辑了这个问题,使其看起来像我现在遇到的问题。dj_数据库url代码看起来不错。下一步建议:1)确保manage.py
引用了正确的设置,或者-overrideDJANGO\u settings\u模块作为配置变量;2) 请确保,如果您引用的是正确的设置文件,您不会通过导入(如从.local_settings import*
)意外地将其覆盖;3) 取消设置数据库url并重新设置数据库。Heroku将为您注入环境变量。