当前位置: 首页 > 面试题库 >

用pymongo在mongodb中按ObjectId搜索

郎伟兆
2023-03-14
问题内容

我需要使用pymongo用python搜索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

问题答案:

我使用pymongo 2.4.1。

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


 类似资料:
  • 我需要使用pymongo用python搜索一个ObjectId,但我总是得到这个错误。你知道怎么搜索吗?

  • 我对以下问题感到困惑。 我正在使用Flask,Flask pymongo扩展,mongodb版本v2。2.0-rc0,pdfile版本4.5 这是我的路线: 该id是msg集合中文档的有效_id,但始终不返回任何id。 我试过: 点击ObjectId(id),但返回错误类型:ObjectId不可调用 按id作为str(id)返回无 有什么想法吗? 更新:完整url的外观如下所示: 更新2: 对于r

  • 主要内容:创建新的 ObjectId,创建文档的时间戳,将 ObjectId 转换为 String本节我们来介绍一下 MongoDB 中的 ObjectId 的组成,ObjectId 是一个 12 字节的 BSON 类型,具有以下结构: 前 4 个字节表示时间戳; 接下来的 3 个字节表示机器标识符; 紧接着的 2 个字节由进程 id(PID)组成; 最后 3 个字节是一个随机计数器的值。 MongoDB 使用 ObjectId 作为每个文档 _id 字段的默认值,而且该值可以在创建文档时自动

  • 我试图使分页工作与MongoDB没有跳过(); 在mongo shell中,我通过查询得到了以下结果,但在Javascript中是空的[]; 我认为我做的ObjectID是错误的,我使用“mongodb ObjectID”和“mongojs”libs与Node一起使用。js。 Mongo外壳: 输出: JavaScript 我如何得到相同的结果,与我的查询在JS? 使用文档中的$oid进行编辑:

  • Mongo在upserts上返回WriteResult: 有什么办法可以从pymongo访问这些字段吗?我需要这个,因为更新总是在pymongo中不返回任何内容,我想知道我正在查询的文档是否被修改,或者即使它存在而不进行其他查询。你能告诉我如何做到这一点吗? 我知道以前有人问过这个问题,但那是几年前的事了,我在谷歌上找到的所有东西都没有一个例子。 既然这样,有没有办法从upsert的结果中获取文档

  • 问题内容: 由于某些原因,这将 不 返回 任何 结果。但是,其中包含带有特定内容的项目。我很确定这是类型和类型转换的问题,但是我不知道该怎么做。 有什么帮助吗? 问题答案: 几个提示: 尝试在命令行从mongodb运行相同的查询,看看是否得到任何结果。 是否在您的模式中将“ campaign_id”定义为ObjectId?如果是这样,请尝试使用ObjectId类型进行搜索。 例如: