javascript - 如何从十六进制字符串在 Mongoose 4.0.x 中创建 ObjectId?

标签 javascript node.js mongodb mongoose objectid

mongoose.mongo.Types.ObjectId 没有 fromString 或 fromHexString 函数。 似乎 new mongoose.mongo.Types.ObjectId(hexString) 也没有创​​建对象 ID。

var id = new mongoose.Types.ObjectId(hexString);
db.Record.find({_id:id }, function (err, campaign){
    if(err) console.log(err);
    callback(campaign);
});

最佳答案

我终于找到了您要找的方法。 mongoose.Types.ObjectId 类有一个名为 createFromHexString 的静态函数,它返回一个 ObjectId 的实例。

var id = mongoose.Types.ObjectId.createFromHexString(hexString);
db.Record.findOne({_id: id}, function (err, campaign){
    if(err) console.log(err);
    callback(campaign);
});

关于javascript - 如何从十六进制字符串在 Mongoose 4.0.x 中创建 ObjectId?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29925152/

相关文章:

mongodb - 如何将 exec 函数的标准输出通过管道传递给另一个函数的读取器?

mongodb - MongoDb 中 $ref (DBRef) 的真正目的是什么

mongodb - 从 MongoDB Compass 执行命令

javascript - 内容可编辑区域中的 Angular Directive(指令)

javascript - Javascript 中的非保留标识符

javascript - socket.on() 未接收数据

node.js - 如何等待for循环的多个异步调用?

javascript - 为什么当我使用外部页面时我的 jquery 不工作

javascript - javascript 中的类型安全或如何避免很难检测到类型相关的错误

javascript - 在 node-mysql 中选择 WHERE IN