mongoose入门

栏目: 数据库 · 发布时间: 7年前

内容简介:mongoose入门

简介

Mongoose是一个针对 MongoDB 的ODM框架(技术名词, 类似ORM的思想).

名称解释

Schema:    一种以文件形式存储的数据库模型骨架(定义数据结构及相关算法),不具备数据库的操作能力

Model:   由Schema发布生成的模型,可对集合(collectin)进行操作

Entity:    由Model创建的实体,他的操作也会影响数据库

Collection复数转换

指定的Collection名是 Person , 经过查询实际存储的Collection名是 People , Why??

// 创建Schema
var PersonSchema = mongoose.Schema({
	name: String
});

// 创建Model
var PersonModel = db.model('Person', PersonSchema);

// 创建Entity
var personEntity = new PersonModel({name: 'zhangsan'});

// 保存Entity
personEntity.save();

注: 请将上面代码中的 Person 改为 Anything , 对于初次接触MongoDB且没看 参考资料2 的工程师更容易理解, 因为MongoDB复数化 Person 时会将其变成 people .

查看mongoose文档, 发现可以设置Collection的名称,如下

// 创建Schema
var PersonSchema = mongoose.Schema({
	name: String
}, {collection: 'persons'});

看了 参考资料2 你将恍然大悟, 并且学会如何将获得的单词变为复数.

MongoDB存储数据流程

  1. 将Model的名称进行复数变幻(eg: Anything –> Anythings)
  2. 将复数化的名称转换为小写anythings
  3. 查找MongoDB中是否有名为anythings的Collection, 有的话将该数据插入, 无的话新建Collection再进行插入

参考资料

  1. Mongoose学习参考文档

  2. Mongoose在创建Model时对Collection的命名策略

  3. Mongoose官方文档

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

水平营销

水平营销

[美] 菲利普·科特勒、费尔南多・德・巴斯 / 陈燕茹 / 中信出版社 / 2005-1 / 25.00元

《水平营销》阐明了相对纵向营销而言的的水平营销的框架和理论。引入横向思维来作为发现新的营销创意的又一平台,旨在获得消费者不可能向营销研究人员要求或建议的点子。而这些点子将帮助企业在产品愈加同质和超竞争的市场中立于不败之地。 《水平营销》提到: 是什么创新过程导致加油站里开起了超市? 是什么创新过程导致取代外卖比萨服务的冷冻比萨的亮相? 是什么创新过程导致巧克力糖里冒出了玩具......一起来看看 《水平营销》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器