I need to search an ObjectId with python using pymongo but I always get this error. Any ideas how to search?
import pymongo
from pymongo import MongoClient
from pymongo import ObjectId
gate = collection.find({'_id': ObjectId(modem["dis_imei"])})
print gate
Traceback (most recent call last):
File "C:\Users\gerswin\Documents\Proyectos\Demonio py\test.py", line 2, in <module>
import pymongo
File "C:\Python27\lib\site-packages\pymongo\__init__.py", line 80, in <module>
from pymongo.connection import Connection
File "C:\Python27\lib\site-packages\pymongo\connection.py", line 39, in <module>
from pymongo.mongo_client import MongoClient
File "C:\Python27\lib\site-packages\pymongo\mongo_client.py", line 45, in <module>
from pymongo import (auth,
File "C:\Python27\lib\site-packages\pymongo\database.py", line 22, in <module>
from pymongo.collection import Collection
File "C:\Python27\lib\site-packages\pymongo\collection.py", line 25, in <module>
from pymongo.cursor import Cursor
File "C:\Python27\lib\site-packages\pymongo\cursor.py", line 19, in <module>
from bson import RE_TYPE
ImportError: cannot import name RE_TYPE
MongoDB uses ObjectIds as the default value of _id field of each document, which is generated while the creation of any document. The complex combination of ObjectId makes all the _id fields unique.
The find_One() method of pymongo is used to retrieve a single document based on your query, in case of no matches this method returns nothing and if you doesn't use any query it returns the first document of the collection.
I use pymongo 2.4.1.
from bson.objectid import ObjectId
[i for i in dbm.neo_nodes.find({"_id": ObjectId(obj_id_to_find)})]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With