如何配置 settings.DATABASES?
Posted
技术标签:
【中文标题】如何配置 settings.DATABASES?【英文标题】:How to configure settings.DATABASES? 【发布时间】:2014-07-20 18:26:58 【问题描述】:./manage.py syncdb 显示一些错误
(ENV)vijay@vijay-Ideapad-Z570:~/nightybuild/heroku-landing$ ./manage.py syncdb 配置不当:settings.DATABASES 配置不正确。请提供 ENGINE 值。有关更多详细信息,请查看设置文档。 (ENV)vijay@vijay-Ideapad-Z570:~/nightybuild/heroku-landing$
在我的 settings.py 中
数据库 = “默认”: 'ENGINE': 'django.db.backends.', # 添加 'postgresql_psycopg2'、'mysql'、'sqlite3' 或 'oracle'。 'NAME': '', # 如果使用 sqlite3,则为数据库文件的路径。 # 以下设置不与 sqlite3 一起使用: '用户': '', '密码': '', 'HOST': '', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP. 'PORT': '', # 默认设置为空字符串。
但我的应用程序在 heroku 中成功运行。当部署其自动 heroku postgres 时。但是在本地开发中却显示了这个错误。
你能告诉我如何为本地设置数据库吗?
【问题讨论】:
【参考方案1】:您使用的是什么类型的数据库? Postgres、MySQL、SQLite?这将是您的 ENGINE
值。
另外,您的本地 postgres 用户名和密码是什么?你的数据库名称呢?
下面是一个名为 testdb 的 postgres 数据库的示例,其用户名 myusername 和密码 mypassword:
DATABASES =
'default':
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'testdb',
'USER': 'myusername',
'PASSWORD': 'mypassword',
'HOST': '',
'PORT': '',
您可能需要根据需要进行更改。最大的变化可能是您的ENGINE
值。如果使用 MySQL,则将 postgresql_psycopg2
更改为 mysql
,如果使用 SQLite,则将 sqlite
更改为。此外,如果使用 SQLite,您将没有 USER
和 PASSWORD
的值。
【讨论】:
这个错误我该怎么办? @Alex ImportError:没有名为 psycopg2.extensions 的模块 您需要先安装软件包。试试pip install psycopg2
。
设置HOST: 'localhost',
没有这个有时会出现奇怪的错误以上是关于如何配置 settings.DATABASES?的主要内容,如果未能解决你的问题,请参考以下文章
安装 Graphite 时出现 Django 错误 - settings.DATABASES 配置不正确。请提供 ENGINE 值
Heroku 上带有 Postgresql 的 Django - settings.DATABASES 配置不正确。请提供名称值