建立集合和文档

上一篇我们使用 Schema 创建规则,创建了集合,同时插入了一条数据并进行了查询。那么基于上一篇基础知识,我们系统的看看建立集合和文档

创建一个自定义名称合集

// 如果我们想拥有自己定义的集合名称,创建架构的时候,给一个参数就好
let userSchema = new mongoose.Schema(
  {
    name: String,
    age: Number,
  },
  { collection: "User" }
);
// 这里的collection值就是我们的集合名字;
// 如果不设置collection自定义集合名字,那么在下面的名字会自动给变成小写字母并且加s后缀
let UserModel = connetction.model("User", userSchema);
// 或者省略collection,写成第三个参数也可以
let UserModel = connetction.model("User", userSchema, "SONGYU");
1
2
3
4
5
6
7
8
9
10
11
12
13

创建文档

UserModel.create 是创建一个文档,可以使用 then,因为返回一个 pormise,或者在 create 里传入一个回调函数也行

UserModel.create({
  name: "宋定宇",
  age: 25,
}).then(
  (res) => {
    console.log(res);
  },
  (err) => {
    console.log(err);
  }
);
1
2
3
4
5
6
7
8
9
10
11

创建实体【用处不多】

一个实体就代表一个文档

let User1 = new UserModel({
  name: "宋宇",
  age: 20,
});
// 必须执行save保存,不然不会写入数据库的
User1.save().then((res) => {
  console.log(res);
});
1
2
3
4
5
6
7
8

总结

模型是一个总的概念,它代表整个集合,操作对象是整个集合 实体是一个单个的概念,它代表单个文档,只能操作自己 关于数据库--库表--集合--文档

删除集合

多数情况下,用不到。 mongoose.model.remove(要删除集合的名字,callback(err))

Last Updated:
Contributors: websong