【问题标题】:Get SchemaType by ObejctId in mongoose在mongoose中通过ObejctId获取SchemaType
【发布时间】:2013-12-13 19:50:57
【问题描述】:

从前端我得到一个元素的obejectId。 对象元素可以属于 2 个模型之一。 它可以是容器架构或文件夹架构的对象 ID。 有没有办法从 mongoosejs 中的 objectId 获取模式类型

【问题讨论】:

  • 不,您应该对两种类型的对象使用相同的架构,或者使用额外的字典(例如额外的集合)将 ObjectID 解析为架构类型。

标签: node.js mongodb express mongoose


【解决方案1】:

答案是否定的。

这里是文档http://docs.mongodb.org/manual/reference/object-id/

ObjectId 是一个 12 字节的 BSON 类型,构造使用:

  • 一个 4 字节的值,表示自 Unix 纪元以来的秒数,
  • 一个 3 字节的机器标识符,
  • 一个 2 字节的进程 ID,以及
  • 一个 3 字节的计数器,从一个随机值开始。

您可以像这样从文档中获取 Schema:

doc.schema

示例:

var UserSchema = mongoose.Schema({name: String, pass: String});
var User = mongoose.model('users', UserSchema);

User.findOne( {_id: your_id}, function (err, doc) {
    console.log(doc.schema)
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-29
    • 1970-01-01
    • 1970-01-01
    • 2012-04-17
    • 1970-01-01
    • 2014-07-18
    相关资源
    最近更新 更多