mongoose初探

  学习mongoose首先需要安装nodejs MongoDB,网上有很多安装教程,这里不多赘言。

  接着cmd到你的工程里面执行npm install mongoose --save (执行--save会在你的json文件里面添加依赖)。

  有了这些我们就可以开始学习mongoose了,那么我们就先来学习下mongoose存储的三个重要概念。

  Schema: 一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力。在mongoose 一切事物都开始于Sechma,Sechema不仅定义了文档的结构和属性的属性,还定义了文档实例方法、静态模型方法、复合索引和文档生命周期钩子,称为中间件。来看代码:

 

 1     var mongoose = require('mongoose');    //引用mongoose模块
 2     var db = mongoose.createConnection('localhost','test'); //创建一个数据库连接
 3 
 4     db.on('error',console.error.bind(console,'连接错误:'));
 5     db.once('open',function(){
 6       //一次打开记录
 7     });
 8   //假设以下代码在回调中处理
 9     var Schema = mongoose.Schema; //定义一个Schema
10 
11     var blogSchema = new Schema({
12           title:  String,     //定义一个title属性,类型String
13           author: String,
14           body:   String,
15           comments: [{ body: String, date: Date }],
16           date: { type: Date, default: Date.now },
17           hidden: Boolean,
18           meta: {
19         votes: Number,
20         favs:  Number
21       }
22 });

  现在已经定义好了Scame,那么接下来干嘛呢?mongoose的第二个概念就要出场了——Model。

  Model:由Schema发布生成的模型,具有抽象属性和行为的数据库操作对。

//使用mongoose.model(modelName, schema)将定义好的Schema实例为可以为我们工作的model。
var Blog = mongoose.model('Blog', blogSchema);

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

  

   var blog1 = new blog({title:'mongoose learning',author:'yuanzp',body:'mongoose is easy to learning.'});
    //打印这个实体的名字看看
    console.log(blog1.name); //Krouky

  SchemaModelEntity的关系请牢记,Schema生成ModelModel创造EntityModelEntity都可对数据库操作造成影响,但ModelEntity更具操作性。

 

转载于:https://www.cnblogs.com/yuanzp/p/5966329.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值