ドキュメントでは、ルビーからの操作方法についてのみ説明しています。PythonからHerokuにmongolabアドオンを使用するにはどうすればいいですか?
2
A
答えて
10
これはMongoLabのWillです。公式のpythonドライバ(pymongo)を使ってPythonで接続する方法の一般的な例があります。この例は、言い方ではHerokuからの接続用ではありませんが、似ているはずです。違いは、あなたのHeroku ENV環境からドライバーの設定を抜き取って、ドライバーに供給する必要があることです。それでも問題が解決しない場合は
https://github.com/mongolab/mongodb-driver-examples/blob/master/python/pymongo_simple_example.py
は
-will
4
は、コマンドラインでheroku config
を実行して、接続文字列の設定を取得しインストールした後[email protected]に直接お気軽にお問い合わせあなたのherokuアプリへのアドオン。
このフォームでキーMONGOLAB_URIを持つエントリがあります:
MONGOLAB_URI => mongodb://user:[email protected]:27707/db
URI文字列からの接続を作成することによって、PythonでURIから単に情報。
1
私はこのような何かが動作するはずだと思う:
import os
import sys
import pymongo
mongo_url = os.getenv('MONGOLAB_URI', 'mongodb://localhost:27017')
db_name = 'mongotest'
if __name__ == '__main__':
try:
connection = pymongo.Connection(mongo_url)
if 'localhost' in self.mongo_url:
db_name = 'my_local_db_name'
else:
db_name = self.mongo_url.rsplit('/',1)[1]
database = connection[db_name]
except:
print('Error: Unable to Connect')
connection = None
if connection is not None:
database.test.insert({'name': 'foo'})
6
私は次のように使用しています:
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)
0
PyMongoは今、この全体の運動は些細なりget_default_database()
方法を提供し、
from pymongo import MongoClient
client = MongoClient(os.environ['MONGOLAB_URI'])
db = client.get_default_database()
関連する問題
- 1. javascriptからアドオンを使用してプロキシを変更するにはどうすればよいですか?
- 2. MVCビューでブートストラップボタンのアドオンを使用するにはどうすればいいですか?
- 3. Firefoxのアドオンと通信するにはどうすればいいですか
- 4. DBをHerokuにアップロードするにはどうすればいいですか
- 5. nodejsアドオンでウィンドウメッセージをポンピングするにはどうすればよいですか?
- 6. データベースでPythonを使用するにはどうすればよいですか?
- 7. PythonでMATLABからユニークな(a、 'rows')を使用するにはどうすればいいですか?
- 8. Safariのアドオンを開発するにはどうすればよいですか?
- 9. herokuに展開されたパーズサーバーでクラウドコードを使用するにはどうすればよいですか?
- 10. herokuアプリをシャットダウンするにはどうすればいいですか?
- 11. firefoxアドオンでjQueryを使用するにはどうすればよいですか?
- 12. ファイルマジック(libmagic)をHerokuにインストールするにはどうすればよいですか?
- 13. SendGridを使用するHerokuのレールアプリケーションの受信メールを読むにはどうすればいいですか?
- 14. Homebrew PythonシステムでCondaを使うにはどうすればいいですか?
- 15. jsコードからFirefoxアドオンのツールバーボタンにアクセスするにはどうすればよいですか?
- 16. Pythonを使用しないで水銀を使うにはどうすればいいですか?
- 17. Python 2.6のpthファイルを使用してカスタムサイトパッケージを使用するにはどうすればいいですか?
- 18. firefoxアドオンからwebsocketイベントを監視するにはどうすればよいですか?
- 19. アプリ内からheroku dyno番号を特定するにはどうすればいいですか?
- 20. Heroku CLIアプリケーションを設定するにはどうすればよいですか?
- 21. PHPからWMIを使うにはどうすればいいですか
- 22. Rundll32をswapmousebuttonに使用するにはどうすればいいですか?
- 23. node.jsを使ってHerokuのs3にパススルーアップロードを行うにはどうすればいいですか?
- 24. Herokuカスタムドメインを使用してメールサービスを設定するにはどうすればよいですか?
- 25. Python 2.7用PyQT4をインストールするにはどうすればよいですか?
- 26. MozillaアドオンでバックグラウンドでロードしているURLを検出するにはどうすればよいですか?
- 27. Pythonでウェブカメラにアクセスするにはどうすればいいですか?
- 28. コンソールアプリケーションでQuartz.netを使用するにはどうすればいいですか?
- 29. Androidでxmlを使用するにはどうすればいいですか?
- 30. プロジェクトでMigLayoutを使用するにはどうすればいいですか?
OPの質問だった、特にHerokuには対処しません。 – claymation