注释和版本的猫鼬模式

时间:2020-04-26 11:04:43

标签: mongodb mongoose

我想像这样在猫鼬中创建模式

用户可以通过提供标题和内容来创建新笔记 用户可以更新便笺,这将创建便笺的新版本 注释的每个版本都可以分别查询。

我使用Mysql,并且是MongoDB的新手,请为我提供一个架构,以及如何插入新注释,更新节点?

1 个答案:

答案 0 :(得分:1)

背景

首先,我认为值得您阅读有关基于文档的数据库以及MongoDB如何实现此信息。这些都是不错的读物:

https://www.ibmbpnetwork.com/linux-blog/mongodb-architecture

https://medium.com/chingu/an-overview-of-mongodb-mongoose-b980858a8994

架构

关于您的问题,可能会有很多答案,尤其是:

如何插入新注释,更新节点?

我会将您的user模式链接到note的模式,如下所示:

var notesSchema = mongoose.Schema({
  title:       String,
  description: String,
  user:        [{ type: Schema.Types.ObjectId, ref: 'User' }],
  created_at:  { type: Date, default: Date.now },
  updated_at:  { type: Date, default: Date.now }
  ... 
  ...
});

您的用户架构将在其他位置定义(假设您可以执行此操作?)。阅读“子文档”并查看其是否更适合您的模型也可能很有用。

注意:添加所需的字段,默认情况下所有字段都是可选,可能对descriptiontitle有用。

我不确定您的笔记有多大,但请记住

唯一的限制是最大文件大小为16MB

那么您如何存储它,我就让您决定。

要插入新的注释,您需要调用API,这又很模糊,可以根据您的设计以多种方式完成。

猫鼬可以插入文档,并且很容易地更新文档。