将mongodb对象的ObjectId转换为字符串

时间:2014-03-15 04:51:59

标签: django mongodb django-templates

如何以字符串格式转换mongodb对象的ObjectId。

ObjectId('5323d54c41cf6e0ffab13384')

我有上面的ObjectId,我想将此ObjectId转换回其生成的字符串名称。有没有什么办法可以直接在django模板中显示ObjectId上面的名字。请建议。

1 个答案:

答案 0 :(得分:0)

只需获取字符串表示:

ObjectId('5323cc2770fde63cf1146ba3')
>>> str(o)
'5323cc2770fde63cf1146ba3'

另见documentation

从你的评论中你似乎没有完全理解ObjectId是什么,我建议你some reading。另请阅读documents一般。

似乎要问的是什么,这不是您的问题的解释,我如何从您收到的ObjectId获得“属性”你保存了一份“文件”,或者以某种形式保存了。通过查询数据库获得“文档”:

var doc = db.collection.findOne({ _id: ObjectId('5323cc2770fde63cf1146ba3') })

然后您可以访问收到的文档的“属性”。因此,您获取的结果“文档”可能如下所示:

{
    "_id": ObjectId('5323cc2770fde63cf1146ba3').
    "name": "Neil",
    "favouriteColour": "Blue",
    "age": "Don't Ask"
}

ObjectId本身不包含 magic 信息。它是集合中存在的文档的主键。