Javascript 我可以用匹配的ObjectID初始化2个mongoose文档吗?
我有一个内容模式。如果用户创建内容文档,则可以对其进行编辑。我希望用户能够选择是看到“原始”内容,还是看到“更新”版本的内容。我的想法是,在创建内容时,也会创建一个原始内容文档,并且两者都包含相同的ObjectId。初始化后,将永远不会编辑原始内容,只编辑内容。然后根据用户选择的视图,他们可以看到内容或原始内容。我是否可以为OriginalContent显式选择ObjectId,使其与内容的ObjectId匹配?还有其他想法吗?没有不要在两个不同的对象上使用相同的对象ID,我建议您可以这样构造对象Javascript 我可以用匹配的ObjectID初始化2个mongoose文档吗?,javascript,mongodb,mongoose-schema,Javascript,Mongodb,Mongoose Schema,我有一个内容模式。如果用户创建内容文档,则可以对其进行编辑。我希望用户能够选择是看到“原始”内容,还是看到“更新”版本的内容。我的想法是,在创建内容时,也会创建一个原始内容文档,并且两者都包含相同的ObjectId。初始化后,将永远不会编辑原始内容,只编辑内容。然后根据用户选择的视图,他们可以看到内容或原始内容。我是否可以为OriginalContent显式选择ObjectId,使其与内容的ObjectId匹配?还有其他想法吗?没有不要在两个不同的对象上使用相同的对象ID,我建议您可以这样构造对
{
_id:ObjectId()
OrignalContent:{
Properties of Orignal Content
}
UpdatedContent:{
Same Properties with OrignalContent but Different values
}
}
通过这种方式,您可以始终使用\u id
获取项
,并选择显示原始内容
或更新内容
。这可能是您的虚拟项(根据需要添加许多属性)
这样你就不必创建两个对象了我意识到,将内容分为原始内容和更新内容实际上并不符合我的目标。用户应该能够喜欢某个内容,一旦喜欢,该用户应该能够以喜欢时的状态查看该内容。如果内容已经更新,用户也应该能够切换到当前状态……(在下一篇评论中继续)我想到的是,当内容受到青睐时,它会被复制(而不是引用)到每个用户的收藏夹数组中。用户收藏夹和实际内容之间没有实时引用,而是创建了一个静态版本(将其视为收藏内容时内容的快照)。我的问题是,静态版本需要有某种方式来访问实时版本,以便用户可以来回切换。是否可以填充复制内容的_id字段,以便我既有静态内容又有对实时内容的引用?谢谢你能用一些代码参考来提出另一个问题吗?这样就很容易理解你的需求了。谢谢(通过阅读注释很难理解),一些伪代码可能有助于澄清问题
{
_id:ObjectId("5db9a2c5c58a7738508bc3ac")
Orignal:{
name: Jon
}
Updated:{
name: Jon Doe
}
}