pongongo के साथ mongodb में ObjectId द्वारा खोज


85

मुझे pymongo का उपयोग करके अजगर के साथ एक ObjectId खोजने की आवश्यकता है, लेकिन मुझे हमेशा यह त्रुटि मिलती है। कैसे खोज करने के लिए कोई विचार?

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

1
पाइमोंगो का संस्करण क्या है?
इवगेनी

मेरा संस्करण pymongo == 2.5
गेर्सविन ली

जवाबों:


169

मैं pymongo 2.4.1 का उपयोग करता हूं।

from bson.objectid import ObjectId
[i for i in dbm.neo_nodes.find({"_id": ObjectId(obj_id_to_find)})]

मैं pymongo को 2.5 से अपडेट करता हूं - सभी काम करने वाले। क्या आप त्रुटि संदेश और अपना कोड देख सकते हैं?
इवगेनी

@GerswinLee "bson.objectid से नोटिस"? आपको एक आयात त्रुटि मिलेगी जिसे आप संस्करण 2.5 में पाइमॉन्गो से आयात करने की कोशिश कर रहे हैं। आपको अजगर-बॉन पैकेज की आवश्यकता है। मुझे यकीन नहीं है कि यह pymongo के साथ स्थापित है या नहीं।
पाखंड

मुझे काम करने के लिए इसे पाने के लिए के लिए, मैं बढ़ने की बात थी obj_id_to_findयानी एक स्ट्रिंग मेंstr(obj_id_to_find)
ल्यूक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.