版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014267209/article/details/52223118
使用方式
var Waterline = require('waterline');
var mysqlAdaper = require('sails-mysql');
var mongoAdaper = require('sails-mongo');
// 适配器
var adapters = {
mongo: mongoAdaper,
mysql: mysqlAdaper,
default: 'mongo'
};
//连接器
var connections = {
mongo: {
adapter: 'mongo',
url: 'mongodb://localhost/waterline-sample'
},
mysql: {
adapter: 'mysql',
url: 'mysql://root:root@localhost/waterline_sample'
}
};
//数据类型
var User = Waterline.Collection.extend({
identity: 'user',
// connection: 'mongo', //使用mongo
connection: 'mysql', // 使用mysql
schema: true, //是否开启强制模式
attributes: {
username: {
type: 'string',
required: true,
},
birthday: {
type: 'date',
after: new Date('1992-10-10'),
},
createTime: {
type: 'date'
}
},
beforeCreate: function(value, cb) { //生命周期回调方法
value.createTime = new Date();
console.log('beforeCreate executed');
return cb();
}
});
//初始化
var orm = new Waterline();
orm.loadCollection(User);
var config = {
adapters: adapters,
connections: connections
}
orm.initialize(config, function(err, models) {
if(err) {
console.error('orm initialize failed.', err);
}
console.log('models', models);
models.collections.user.create({
username: 'linyz'
}, function(err, user) {
console.log('after user.create,err,user:', err, user);
});
});