1

我创建了使用 mongo 数据库的 django web 应用程序,我使用 pymongo 连接到 mongo

 def load_database():
    mongo = pymongo.Connection('127.0.0.1')
    db = mongo['database'] 

当我尝试加载我的网络应用程序时,出现错误

Exception Type:

ImproperlyConfigured



Exception Value:

settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details. 


Exception Location:

Python-2.7/lib/python2.7/site-packages/django/db/backends/dummy/base.py in complain, line 15

看起来 settings.py 配置错误,这是我的 settings.py :

MANAGERS = ADMINS

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or     
'NAME': '',                      # Or path to database file if using sqlite3.
 # The following settings are not`enter code here` used with sqlite3:
'USER': '',
'PASSWORD': '',
'HOST': '',                      # Empty for localhost through domain sockets or   '
'PORT': '',                      # Set to empty string for default.
}
}

有人可以告诉我出了什么问题吗?当我加载不连接到 mongo 的主页时,只有静态文件加载正常,当我单击从 mongo 数据库获取数据并打印出该数据的 hoempage 上的按钮时,我收到此错误。我也尝试了 python manage.py syncdb 但出现错误:ImproperlyConfigured: settings.DATABASES 配置不正确。请提供 ENGINE 值。查看设置文档以获取更多详细信息。

4

2 回答 2

2

为了使 mongoDB 正常工作,您应该安装以下软件包:Django-nonrel、djangotoolbox、mongodb-engine for Django。

之后,您可以编辑设置

DATABASES = {
   'default' : {
      'ENGINE' : 'django_mongodb_engine',
      'NAME' : 'my_database'
   }
}
于 2013-08-19T15:15:42.200 回答
1

如果您直接使用 pymongo,则可以DATABASES从 settings.py 中省略整个变量。

如果您不想直接使用 pymongo,请考虑查看mongoengine

于 2013-08-19T14:10:17.977 回答