2011-10-21 2 views

答えて

36

を動作するはずですそれは次のようになります。

from pymongo.objectid import ObjectId 
thing = db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001') }) 

EDIT: 現在のインポートは次のとおりです。 from bson.objectid import ObjectId

+0

ああ、輸入はすべての違いを、ありがとう! – MFB

+0

for pymongo> 2.2を参照してください。https://stackoverflow.com/a/10919658/6613450 –

0

thing = db.things.find_one({'_id':ObjectId('4ea113d6b684853c8e000001')})

+0

変数のおかげで店 – MFB

23

PyMongoは、その構造を変更しました。 ObjectIDpymongoからインポートされなくなりましたが、bsonからインポートされました。それは今のようになります。リマインダーとして

from bson.objectid import ObjectId 
thing = db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001')}) 

pypi/pymongoごとに、「BSON」パッケージをインストールしないでください。 PyMongoには独自のbsonパッケージが付属しています。 "pip install bson"を実行すると、PyMongoと互換性のないサードパーティのパッケージがインストールされます。

+0

参照http://stackoverflow.com/questions/10401499/mongokit-importerror-no-module-named-objectid-error – Sean

0

PyMongoのマニュアルが現在のバージョンと同期していないようです。 ObjectIdsは現在bson.objectid名前空間の下にあります。私が正しく覚えていれば、彼らはバージョン2.3以降のやり方です。 bson.objectidからの使用ObjectIdをインポートします。それを印刷するには

1

import pymongo 
from bson.objectid import ObjectId  
print(db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001')})) 

を印刷したくない場合は、あなたの答えは、正しいですが、それは私が行方不明になった輸入した、歓声lobster1234他

関連する問題