学习笔记文档:https://pan.baidu.com/s/1cCKrjBHJyaWGC9RyVjC6KQ
密码:ox3q
中文API博客:https://cnodejs.org/topic/51ff720b44e76d216afe34d9
demo.js:
//引包,并不需要引用mongodb这个包(模块) var mongoose = require('mongoose'); // npm安装mongoose模块 电脑安装mongo数据库 //连接数据库,myDb是数据库名字 mongoose.connect('mongodb://localhost/myDb'); //创建了一个模型。猫的模型。所有的猫,都有名字,是字符串。“类”。 var Cat = mongoose.model('Cat', { name: String }); //会自动创建cats的集合(数据表) //实例化一只猫 var kitty = new Cat({ name: 'Zildjian' }); //调用这只猫的save方法,保存这只猫。自动保存在数据库中 kitty.save(function (err) { console.log('添加成功'); });
demo2.js:
//引包 var mongoose = require('mongoose'); //创建一个数据库连接 mongoose.connect('mongodb://localhost/test'); //创建一个Cat模型。 语法mongosse.model(模型名字,Schema); //这里省略了一步,就是schema是通过new mongoose.schema({})创建的。 var Cat = mongoose.model('Cat', { name: String , age : Number , sex : String }); // 第二个参数就是schema。 省略了new schema的过程。 //实例化,实例化的时候,new Cat(数值) var kitty = new Cat({ name: "汤姆" , "sex" : "公猫"}); //保存 kitty.save(function (err) { console.log('meow'); }); //寻找汤姆猫,将它改为8岁。 增删改查:Cat.create Cat.find Cat.findOne Cat.update Cat.remove (对应原生mongoDB的shell命令) Cat.find({"name":"汤姆"},function(err,result){ var xiaomao = result[0]; //xiaomao这个变量就是一个Cat的实例。 //因为它是从Cat集合中find出来的,所以find出来之后就是Cat的一个实例 xiaomao.age = 8; // 修改该实例的age属性(字段)。 xiaomao.save(); // 保存在数据库。 (相当于修改数据库) });