如何在Python中使用Heroku的mongolab插件?

3 投票
5 回答
6685 浏览
提问于 2025-04-17 10:13

文档只提到如何用Ruby来实现这个功能。

5 个回答

4

在你的Heroku应用上安装了插件后,可以通过在命令行中运行 heroku config 来获取连接字符串的设置。

你会看到一个以 MONGOLAB_URI 为键的条目,格式如下:

MONGOLAB_URI => mongodb://user:pass@xxx.mongolab.com:27707/db

然后只需从这个uri中提取信息,在Python中通过这个uri字符串来创建连接。

7

我正在使用以下内容:

import os
from urlparse import urlsplit
from pymongo import Connection

url = os.getenv('MONGOLAB_URI', 'mongodb://localhost:27017/testdb')
parsed = urlsplit(url)
db_name = parsed.path[1:]

# Get your DB
db = Connection(url)[db_name]

# Authenticate
if '@' in url:
    user, password = parsed.netloc.split('@')[0].split(':')
    db.authenticate(user, password)
11

大家好,我是MongoLab的Will。这里有一个简单的例子,教你怎么用官方的Python驱动(pymongo)连接MongoDB。这个例子不是专门针对Heroku的,但连接方式应该差不多。不同的是,你需要从Heroku的环境变量中提取你的驱动配置,然后提供给驱动。

你可以在这里找到这个例子的代码:https://github.com/mongolab/mongodb-driver-examples/blob/master/python/pymongo_simple_example.py

如果你还有问题,欢迎直接联系我们,邮箱是support@mongolab.com。

- Will

撰写回答