如何将Django ORM连接到mongo atlas?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将Django ORM连接到mongo atlas?相关的知识,希望对你有一定的参考价值。

我正在尝试使用django将我的django实例连接到mongodb集群。我从各种来源检查了它的工作方式是:

  • 安装dnspython
  • DATABASES有以下settings.py dict
DATABASES = {
    'default': {
        'ENGINE': 'djongo',
        'NAME': 'test',
        'HOST': 'mongodb+srv://mongo_usr:' + urllib.parse.quote('mypassword') + '@domain_assigned.mongodb.net/test?ssl=true&ssl_cert_reqs=CERT_NONE&retryWrites=true',
        'ENFORCE_SCHEMA': False
    }
}

它真正找到了端点,但我得到一个奇怪的错误:

pymongo.errors.ServerSelectionTimeoutError: connection closed,connection closed,connection closed

以前有人修过这个吗?

答案

我刚刚设置了Django和MongoDB Atlas,其中包括:

DATABASES = {
        'default': {
        'ENGINE': 'djongo',
        'NAME': '<db name>',
        'HOST': 'mongodb+srv://<db username>:<db password>@....mongodb.net/test?retryWrites=true',
        'USER': '<db username>',
        'PASSWORD': '<db password>',
    }
}

希望有所帮助!

另一答案

我已经设法通过使用来自@Market Ahead here的片段与djongo连接到mongo atlas

看起来他们不希望密码里面有奇怪的字符。在这种情况下,即使逃避也不能最佳地工作。

以上是关于如何将Django ORM连接到mongo atlas?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Django 频道会话分配给 ORM 中的对象?

django 连接到 mysql 和 mongodb

使用Mongoose(ORM)将多个应用程序与一个mongo数据库连接

如何从 Mac OS 终端连接到远程 mongo 服务器

如何将 React 连接到 Django?

将 Spring boot Container 连接到 Mongo Container: java.net.UnknownHostException: mongo: System error?