简介
Mongoose是一个针对MongoDB的ODM框架(技术名词, 类似ORM的思想).
名称解释
Schema: 一种以文件形式存储的数据库模型骨架(定义数据结构及相关算法),不具备数据库的操作能力
Model: 由Schema发布生成的模型,可对集合(collectin)进行操作
Entity: 由Model创建的实体,他的操作也会影响数据库
Collection复数转换
指定的Collection名是Person
, 经过查询实际存储的Collection名是People
, Why??
1 | // 创建Schema |
注: 请将上面代码中的Person
改为Anything
, 对于初次接触MongoDB且没看参考资料2
的工程师更容易理解, 因为MongoDB复数化Person
时会将其变成people
.
查看mongoose文档, 发现可以设置Collection的名称,如下
1 | // 创建Schema |
看了参考资料2
你将恍然大悟, 并且学会如何将获得的单词变为复数.
MongoDB存储数据流程
- 将Model的名称进行复数变幻(eg: Anything –> Anythings)
- 将复数化的名称转换为小写anythings
- 查找MongoDB中是否有名为anythings的Collection, 有的话将该数据插入, 无的话新建Collection再进行插入