mongoose 浅析

mongoose是nodeJS提供连接 mongodb的一个库,此外还有mongoskin, mongodb(mongodb官方出品).
接下来是我对mongoose应用的中的一些总结和在应用过程中的一个里面。

如何通过mongoose去连接mongodb
db.js

//引入mongoose
var mongoose = require('mongoose');
const bluebird = require('bluebird');
mongoose.Promise = bluebird;
//引入已经写好的model
var userModel = require('./userModel').userModel;
//使用mongoose连接mongodb
mongoose.connect('mongodb://localhost/tserver');
var db=mongoose.connection;
db.on('error', console.error.bind(console, '数据库连接错误'));
db.once('open', function () {
    console.log(' database open success');
});
//把定义好的model 放到mongodb里面
db.userModel = userModel;
//
module.exports=db;

预制好的model

//引入mongoose
var mongoose = require('mongoose');
//初始化 Schema
var userSchema = new mongoose.Schema({
    userName:{
        type:String
    },
    passWord:{
        type:String
    }

});
//exports Schema
exports.userSchema=userSchema;
//集成Schema 初始化 model
exports.userModel=mongoose.model('user',userSchema,'user');

代码解析:
首先看一下 mongoose 、schema 和model 之间的关系

这里写图片描述

mongoose实际上,可以说是Oracle和mongodb的一个混合产物,但归根接地还是mongodb的. 盗图,某作者珍藏很久的对比图. 熟悉其他数据库的同学应该能很快明白的.
这里写图片描述

通过上面的阐述,我们大概能知道了在Mongoose里面有哪几个基本概念.

Schema: 相当于一个数据库的模板. Model可以通过mongoose.model 集成其基本属性内容. 当然也可以选择不继承.
Model: 基本文档数据的父类,通过集成Schema定义的基本方法和属性得到相关的内容.
instance: 这就是实实在在的数据了. 通过 new Model()初始化得到.

参考地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值