当前位置: 主页 > 日常积累 > node >

mongoose基础

简介:mongoose是一个将javascript对象与数据库产生关系的一个框架,object related model。操作对象,就是操作数据库;对象产生,同事也持久化,这个思路是Java三大框架SSH中Hibernate框架的思路。彻底改变了人们使用数据库的方式。

//引包,并不需要引用mongodb这个包   
var mongoose = require('mongoose');   
//链接数据库,haha是数据库名字  
mongoose.connect('mongodb://localhost/haha');  
//创建了一个模型。猫的模型。所有的猫,都有名字,是字符串。“类”。
var Cat = mongoose.model('Cat', {
    name: String
}); 
//实例化一只猫
var kitty = new Cat({
    name: 'Zildjian'
});
//调用这只猫的save方法,保存这只猫
kitty.save(function(err) {
    console.log('喵喵喵');
});
var tom = new Cat({
    "name": "汤姆"
});
tom.save(function() {
    console.log('喵喵喵');
});


创建模型

定义它属性什么类型

mongoose.model('模型名字',{‘name’:String,'age':Integer}) //定义猫的类型


实例化

将对象实力化给定义的类型

var kitty = new Cat({ name: 'Zildjian' });


调用执行方法,让他去做相应的事件


添加记录,基于实例化进行操作,使用sava() 在mongoose里添加一条数据

kitty.save(function(err) {
    console.log('喵喵喵');
});


添加记录,基于model进行操作,使用create() 在mongoose里添加一条数据

var kittys = {username : 'model_demo_username', title : 'model_demo_title', content : 'model_demo_content'};
mongooseModel.create(kittys, function(error){
    if(error) {
        console.log(error);
    } else {
        console.log('save ok');
    }
    // 关闭数据库链接
    db.close();});


删除记录,使用remove() 在mongoose里删除一条数据,不会删除集合本身,删除conditions与集合相匹配的所有文档

Character.remove({ name: 'Eddard Stark' }, function (err) {});


修改记录,使用update() 在mongoose里添加一条数据

MyModel.update({ age: { $gt: 18 } }, { oldEnough: true }, fn);

MyModel.update({ name: 'Tobi' }, { ferret: true }, { multi: true }, function (err, raw) {  if (err) return handleError(err);  console.log('The raw response from Mongo was ', raw);
});


查看记录,使用find

    // mongoose findvar 
     criteria = {title : 'emtity_demo_title'}; 
    // 查询条件
    var fields   = {title : 1, content : 1, time : 1}; 
    // 待返回的字段
var options  = {};mongooseModel.find(criteria, fields, options, function(error, result){
    if(error) {
        console.log(error);
    } else {
        console.log(result);
    }
    //关闭数据库链接
    db.close();});

参考网站 :mongoosejs

[日志信息]

该日志于 2018-05-25 10:50 由 陈文超 发表在 未知 网站下,你除了可以发表评论外,还可以转载 “mongoose基础” 日志到你的网站或博客,但是请保留源地址及作者信息,谢谢!!    (尊重他人劳动,你我共同努力)

Copyright © 2015-2018 陈文超博客 保留所有权利 琼ICP备15003229号| 托管于阿里云 · 博客稳定运行 | 网站地图 |

返回顶部