mongoDB的api(mongoose)

有关数据库的有用的一些 api,便是mongoose. 在node开发中,底层去处理更多的细节。加快开发速度,维护更少的代码。

启动mongodb服务器,建立mongodb连接

安装mongoose
npm install mongoose
复制代码
建立连接
var mongoose = require('mongoose')
// 连接tasks的数据库
var db = mongoose.connect('mongodb://localhost/tasks')

// 注册schmea,使用mongoose去管理数据时,需要注册schema
var Schema = mongoose.Schema
var Tasks = new Schema({
  project: String,
  description: String
})

// 通过访问schma,去带动mongoose工作
mongoose.model('Task', Tasks)
var Task = mongoose.model('Task')
var task = new Task()

可以直接省略为一句话
var task = mongoose.model('Task', Tasks)
复制代码
添加项目
一项:

 task.project = 'bikeshed'
 task.description = 'do you know the mongoose'
 task.save(function(err) {
    if (err) throw err;
    console.log('task saved')
 })
 
 // save 只可以保存 单项 
 //且 var task = new Task() 不可少
 
 
 多项任务:
 
 var taskArr = [{project: '00', description: '00'}, {project: '11', description: '11'}]
 
 /// 保存
 task.collection.insert(taskArr, onInsert)
 function onInsert(err, taskArr) {
    if (err) throw err;
    console.log('task saved array')
 }
 
 or
 
 task.create(taskArr, function(err, small) {
    if (err) throw err;
    console.log('task saved array create')
})
复制代码
查询项目
var Task = mongoose.model('Task', Tasks)

Task.find({'project':'00'}, function(err, tasks) {
   for (var i = 0; i < tasks.length; i++) {
     console.log('id' + tasks[i]._id);
     console.log(tasks[i].description)
   }
})
复制代码
更新项目
var Task = mongoose.model('Task', Tasks)

// 根据id去找该项记录, 修改description
Task.update({_id: 'XXXX'}, {description: 'XXX'}, {multi: false})
复制代码
删除项目
var Task = mongoose.model('Task');

Task.findById('XXXXXX', function(err, task) {
  task.remove()  
})
复制代码

转载于:https://juejin.im/post/5cac5003e51d456e71408579

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值