使用MongoDB作为Django的后端:运行时出错";python manage.py migrate“;

使用MongoDB作为Django的后端:运行时出错";python manage.py migrate“;,python,django,mongodb,python-2.7,django-models,Python,Django,Mongodb,Python 2.7,Django Models,我是Django新手,希望使用Django和Mongodb作为后端。我从互联网上给出的例子开始。但在我尝试运行迁移时遇到了一些问题 已安装:django 1.8、pymongo 2.8、mongodb Models.py from __future__ import unicode_literal from mongoengine import * class Choice(EmbeddedDocument): choice_text = StringField(max_

我是Django新手,希望使用Django和Mongodb作为后端。我从互联网上给出的例子开始。但在我尝试运行迁移时遇到了一些问题

已安装:django 1.8、pymongo 2.8、mongodb

Models.py

 from __future__ import unicode_literal
 from mongoengine import *

 class Choice(EmbeddedDocument):
        choice_text = StringField(max_length=200)
        votes = IntField(default=0)

 class Poll(Document):
    question = StringField(max_length=200)
    pub_date = DateTimeField(help_text='date published')
    choices = ListField(EmbeddedDocumentField(Choice))
Setttings.py:在mongodb中创建了一个用户“mango”。mongodb运行良好

import mongoengine
from mongoengine import connect

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.dummy',
    },
}

SESSION_ENGINE = 'mongoengine.django.sessions'

_MONGODB_USER = 'mango'
_MONGODB_PASSWD = 'mango'
_MONGODB_HOST = 'localhost'
_MONGODB_NAME = 'performance'
_MONGODB_DATABASE_HOST = \
    'mongodb://%s:%s@%s/%s' \
    % (_MONGODB_USER, _MONGODB_PASSWD, _MONGODB_HOST, _MONGODB_NAME)

mongoengine.connect(_MONGODB_NAME, host=_MONGODB_DATABASE_HOST)

AUTHENTICATION_BACKENDS = (
    'mongoengine.django.auth.MongoEngineBackend',
)
我试图运行python manage.py migrate,它抛出了以下错误。但是我可以从shell连接到Db。你们谁能帮我理解这个问题吗

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 302, in execute
    settings.INSTALLED_APPS
  File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 55, in __getattr__
    self._setup(name)
  File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 43, in _setup
    self._wrapped = Settings(settings_module)
  File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 99, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "C:\Python27\lib\importlib\__init__.py", line 37, in import_module
    __import__(name)
  File "C:\Users\pm348b\Desktop\Praneeth_Desktop\Python_Programs\TEST\mysite\mysite\settings.py", line 118, in <module>
    mongoengine.connect(_MONGODB_NAME, host=_MONGODB_DATABASE_HOST)
  File "C:\Python27\lib\site-packages\mongoengine\connection.py", line 165, in connect
    return get_connection(alias)
  File "C:\Python27\lib\site-packages\mongoengine\connection.py", line 128, in get_connection
    raise ConnectionError("Cannot connect to database %s :\n%s" % (alias, e))
mongoengine.connection.ConnectionError: Cannot connect to database default :
command SON([('saslStart', 1), ('mechanism', 'SCRAM-SHA-1'), ('autoAuthorize', 1), ('payload', Binary('n,,n=mango,r=OTc3NDkxNTE3NTM3', 0))]) on namespace performance.$cmd failed: Authentication failed.
回溯(最近一次呼叫最后一次):
文件“manage.py”,第10行,在
从命令行(sys.argv)执行命令
文件“C:\Python27\lib\site packages\django\core\management\\ uuuuu init\uuuuuu.py”,第353行,从命令行执行
utility.execute()
文件“C:\Python27\lib\site packages\django\core\management\\uuuu init\uuuuu.py”,第302行,在execute中
settings.INSTALLED\u应用程序
文件“C:\Python27\lib\site packages\django\conf\\ uuuuu init\uuuuu.py”,第55行,在\uuuu getattr中__
自我设置(名称)
文件“C:\Python27\lib\site packages\django\conf\\ uuuuu init\uuuuu.py”,第43行,在安装程序中
自包装=设置(设置模块)
文件“C:\Python27\lib\site packages\django\conf\\ uuuuu init\uuuuu.py”,第99行,在uuu init中__
mod=importlib.import\u模块(自我设置\u模块)
文件“C:\Python27\lib\importlib\\uuuu init\uuuuu.py”,第37行,在导入模块中
__导入(名称)
文件“C:\Users\pm348b\Desktop\praneth\u Desktop\Python\u Programs\TEST\mysite\mysite\settings.py”,第118行,在
connect(\u MONGODB\u名称,主机=\u MONGODB\u数据库\u主机)
文件“C:\Python27\lib\site packages\mongoengine\connection.py”,第165行,在connect中
返回get_连接(别名)
get\U连接中第128行的文件“C:\Python27\lib\site packages\mongoengine\connection.py”
raise ConnectionError(“无法连接到数据库%s:\n%s”%(别名,e))
mongoengine.connection.ConnectionError:无法连接到数据库默认值:
命名空间性能上的命令子([('saslStart',1),('mechanism','SCRAM-SHA-1'),('autoAuthorize',1),('payload',Binary('n,n=mango,r=OTc3NDkxNTE3NTM3',0))。$cmd失败:身份验证失败。
在settings.py文件中使用此选项

DATABASES = {
'default': {
    'ENGINE': 'djongo',
    'NAME': 'Name of the Cluster',
    'HOST': 'The link which mongo provides for python',
    'USER': "Created User's username",
    'PASSWORD': 'Password of the above user',
}