//使用mongoose框架来处理mongodb数据库
/**
第一步,创建connection,如果app只用到一个数据库,用mongoose.connect
,如果不只用到一个数据库,那就用mongoose.createConnection
*/
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
//mongoose.connnect('mongodb://host/database/port/options或者URI');
var Schema = mongoose.Schema,
ObjectID = Schema.ObjectID;
var Comment = new Schema({ //像orm关系型数据库一样,定义表的字段
name:{type:String,default:'lijunsong'},
age:{type:Number,min:18,index:true},
bio:{type:String,match:/[a-z]/},
date:{type:Date,default:Date.now},
buff:Buffer
});
Comment.path('name').set(function(v){ //对Comment表中的name字段进行处理,name字段中的值首字符大写
return capitalize(v);
});
//插件
Comment.pre('save',function(next){//保存之前触发
console.log(this.get('email'));
next();
});
var MyModel = mongoose.model('comments', Comment);
var m = new MyModel();
m.save(function(err){
console.log(err);
}
) // works
/**
第一步,创建connection,如果app只用到一个数据库,用mongoose.connect
,如果不只用到一个数据库,那就用mongoose.createConnection
*/
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
//mongoose.connnect('mongodb://host/database/port/options或者URI');
var Schema = mongoose.Schema,
ObjectID = Schema.ObjectID;
var Comment = new Schema({ //像orm关系型数据库一样,定义表的字段
name:{type:String,default:'lijunsong'},
age:{type:Number,min:18,index:true},
bio:{type:String,match:/[a-z]/},
date:{type:Date,default:Date.now},
buff:Buffer
});
Comment.path('name').set(function(v){ //对Comment表中的name字段进行处理,name字段中的值首字符大写
return capitalize(v);
});
//插件
Comment.pre('save',function(next){//保存之前触发
console.log(this.get('email'));
next();
});
var MyModel = mongoose.model('comments', Comment);
var m = new MyModel();
m.save(function(err){
console.log(err);
}
) // works