Django 1.7.1-继续使用虚拟数据库引擎
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 1.7.1-继续使用虚拟数据库引擎相关的知识,希望对你有一定的参考价值。
我尝试了一千篇文章,对此没有任何帮助...
- 所以我将$ DJANGO_SETTINGS_MODULE设置为myproj.settings
- 如果我运行python manage.py --setting = eventprowl.settings我得到
raise ImproperlyConfigured(“ settings.DATABASES不正确配置。 ” django.core.exceptions.ImproperlyConfiged:settings.DATABASES配置不正确。请提供引擎值。检查设置文档以获取更多详细信息。
- 在我的环境中,我有以下内容
DATABASE_ENGINE ='django.db.backends.sqlite3'
DATABASE_NAME = os.path.join(BASE_DIR, 'db.sqlite3') DATABASE_USER = '' DATABASE_PASSWORD = '' DATABASE_HOST = '' DATABASE_PORT = '' DATABASES = 'default': 'ENGINE': DATABASE_ENGINE, 'NAME': DATABASE_NAME, 'USER': DATABASE_USER, 'PASSWORD': DATABASE_PASSWORD, 'HOST': DATABASE_HOST, 'PORT': DATABASE_PORT,
我尝试再次卸载并安装Django,但没有任何改变。我的文件夹结构是
myproj >
manage.py
myproj >
settings.py
而且我没有任何其他设置文件...但是,当我这样做时
python manage.py diffsettings
我得到数据库的以下信息:
DATABASES = '默认':'AUTOCOMMIT':真,'ENGINE':'django.db.backends.dummy','ATOMIC_REQUESTS':False,'NAME':``,'CONN_MAX_AGE':0,'TIME_ZONE':'UTC','PORT':'','HOST':'','USER':'','TEST':'COLLATION':无,'CHARSET':无,'NAME':无,'MIRROR':None,'PASSWORD':'','OPTIONS':]
所以引擎仍然是django.db.backends.dummy ...
有什么想法吗?谢谢。
所以我设法自己修复它,问题是我有
DATABASES['default'] = dj_database_url.config()
这里。因为我使用的是Heroku,所以我删除了这一行并开始工作,现在最终的settings.py文件如下所示:
import dj_database_url
# Database
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases
if DEBUG:
DATABASES =
'default':
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
else:
DATABASES = 'default': dj_database_url.config(default='postgres://localhost')
您必须记住在部署时将DEBUG变量值更改为False。
这也会在更高版本中发生。 Django 2.2发生在我身上基本上发生这种情况是因为dj_database_url.config()
查找DATABASE_URL
,并且在找不到URL时默认为虚拟引擎。
以上是关于Django 1.7.1-继续使用虚拟数据库引擎的主要内容,如果未能解决你的问题,请参考以下文章