【问题标题】:Flask PyMongo string back to ObjectID [duplicate]烧瓶 PyMongo 字符串返回 ObjectID [重复]
【发布时间】:2018-03-26 21:31:08
【问题描述】:

我正在使用带有 pymongo 的烧瓶,并且我的对象 ID 被转换为字符串。如何将其更改回对象 ID,以便我可以使用 if 进行查询?

From : 59d7ef576cab3d6118805a20
type is <class 'str'>

To: ObjectId("59d7ef576cab3d6118805a20")
type is <class 'bson.objectid.ObjectId'>

【问题讨论】:

    标签: mongodb flask pymongo pymongo-3.x flask-pymongo


    【解决方案1】:

    您可以使用 bson.objectid.ObjectId 从字符串创建 ObjectId。请参阅 pymongo 网站上的文档:http://api.mongodb.com/python/current/api/bson/objectid.html

    例如:

    from pymongo import MongoClient
    from bson.objectid import ObjectId
    
    client = MongoClient()
    collection = client.test.test
    
    print(collection.find_one({"_id": ObjectId("59d7ef576cab3d6118805a20")}))
    

    bson 包与 pymongo 一起安装。您不需要安装单独的 bson 包。

    【讨论】:

      猜你喜欢
      • 2018-10-10
      • 2019-05-03
      • 2020-10-02
      • 2020-08-21
      • 1970-01-01
      • 2020-07-06
      • 2013-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多