node中mongoose操作数组类型字段

来源:互联网 发布:mac卸载软件 编辑:程序博客网 时间:2024/06/03 15:55
var mongoose = require('mongoose');mongoose.connect('mongodb://localhost:27017/test');var db = mongoose.connection;db.on('error',function (err) {  console.log('Mongoose connection error: ' + err);});db.once('open', function() {  console.log('Mongoose connection connected!');});var Schema = mongoose.Schema;var userSchema = new Schema({    _id : String,    tags: [{ _id: false, tagID: Number, optDate: Date, enable: Boolean }]});var User = mongoose.model('User', userSchema,'user');//查询User.aggregate({ $project: { _id : 1, tags: 1 } }).unwind('tags').exec(function (err, users) {  if (err) return console.error(err);  console.log(users);});//插入User.update({ "_id" : "195861"}, { $push : { tags: {tagID : 1, optDate : Date("2016-08-12T15:21:02.930Z"), enable : false}}},function(err,result){  if (err) return console.error(err);  console.log(result);  });//删除User.update({ "_id" : "195861"}, { $pull : { tags: {tagID : 2}}},function(err,result){  if (err) return console.error(err);  console.log(result);  });//更新User.update({      "_id" : "195861",     "tags.tagID" : 1},{     $set: {          "tags.$" : {          'tagID" : 333,          "optDate" : new Date(),          "enable" : true}           }},function(err,result){  if (err) return console.error(err);  console.log(result);  });
原创粉丝点击