Mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具
mongoose安装
1 | npm install mongoose |
安装成功后,就可以通过 require(‘mongoose’) 来使用!
简介
https://mongoosejs.com/docs/index.html
建立链接
1 | var mongoose = require('mongoose'), |
Schema
c是mongoose里会用到的一种数据模式,可以理解为表结构的定义;每个schema会映射到mongodb中的一个collection,它不具备操作数据库的能力
对于mongoose一切都源于mongoose
🌰, 定义一个user的Schema并生成model导出:
1 | var mongoose = require('./db.js'), |
Schema Types内置类型如下:
String , Number , Boolean | Bool , Array , Buffer , Date , ObjectId | Oid , Mixed
model
mongoose.model(modelName, schema)
1 | // 用上述Schema生成一个model, |
model是一个用来创建document的类. 在这种情况下,每个document将具有Schema的属性和行为. 我们可以新建一个user:
1 | var user1 = new User({name: '用户1', userpwd:'123456', userage: '22'}) |
我们可以给Schema添加方法, 从而使所有的model具有相应方法:
1 | UserSchema.methods.getName = function(){ |
到目前为止我们还没有保存任何东西到mongoDB中, 其实每个document都有一个save方法用来将model保存到数据库
1 | user1.save(function (err, user1) { |
可以通过model查询, 查询所有由他生成的document
1 | User.find(function (err, users) { |
添加查询条件
1 | User.find({ name: /^用户/ }, function (err, users) { |