将 Mongo ObjectId 保存到另一个文档中
Posted
技术标签:
【中文标题】将 Mongo ObjectId 保存到另一个文档中【英文标题】:Save a Mongo ObjectId into another document 【发布时间】:2017-06-22 05:40:09 【问题描述】:我正在研究commenting system saved into Mongo,它建议以下结构:
_id: ObjectId(...),
discussion_id: ObjectId(...),
slug: '34db',
posted: ISODateTime(...),
author:
id: ObjectId(...),
name: 'Rick'
,
text: 'This is so bogus ... '
我想将author.id
保存为用户评论的ObjectId
,我在请求req.user._id
中有这个值
我需要为我的 Comment 模型提供什么数据类型才能接受此值?
我试过了:
const authorSchema = new Schema(
id: ObjectId,
username: String
);
但这给了ReferenceError: ObjectId is not defined
我看到ObjectId listed as a valid Schema type 但是,它只有在自动生成时才会出现。
将评论中的user._id
ObjectId 存储为author.id
的正确方法是什么,或者是否有更好的方法来完全存储引用?
【问题讨论】:
【参考方案1】:因此,您必须通过从 Mongoose 获取它来在架构文件中定义 ObjectId。
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const ObjectId = Schema.Types.ObjectId;
在文档here中有一个完整的引用示例
【讨论】:
以上是关于将 Mongo ObjectId 保存到另一个文档中的主要内容,如果未能解决你的问题,请参考以下文章