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官方文档

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

查看所有标签

猜你喜欢:

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

Flash与后台

Flash与后台

刘明伟 / 清华大学出版社 / 2007-6 / 52.00元

《Flash与后台:ASP/ASP.NET/PHP/Java/JavaScript/Delphi总动员》从目前热门的F1ash与ASP、ASP.NET、PHP、Java、JavaScript和Delphi的交互知识入手,深入浅出地讲解了F1ash与后台通信的原理和交互的过程,力求使阅读《Flash与后台:ASP/ASP.NET/PHP/Java/JavaScript/Delphi总动员》的每一位读......一起来看看 《Flash与后台》 这本书的介绍吧!

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具