建立集合和文档
上一篇我们使用 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
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
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
2
3
4
5
6
7
8
总结
模型是一个总的概念,它代表整个集合,操作对象是整个集合 实体是一个单个的概念,它代表单个文档,只能操作自己 关于数据库--库表--集合--文档
删除集合
多数情况下,用不到。 mongoose.model.remove(要删除集合的名字,callback(err))