Sailjs-Waterline:序列化,分析和初始化一个模型

假设我find了使用下一个命令的用户:

User.findOne(id).exec(function(err, user){ redis.set(JSON.stringify(user), id); }) 

之后,我从redis加载我的对象

 redis.get(id, function(err, reply){ if(!err && reply) { var user = JSON.parse(reply); // here methods like user.save() or any of defined manually by developer is unavailable // } else { .. } }) 

用户模型示例:

 module.exports = { attributes : { // Simple attribute: // name: 'STRING', // Or for more flexibility: // phoneNumber: { // type: 'STRING', // defaultValue: '555-555-5555' // } email : { type: 'string', unique: true }, // ... verifyPass: function(pass, callback) { var obj = this.toObject(); if (callback) { return Password.compare(pass, obj.local.password, callback); } return Password.compareSync(pass, obj.local.password); }, // retrieve profile for sending to front end getProfile: function() { var obj = this.toObject(); var profile = {}; profile.id = obj.id; // ... return profile; }, 

当我从jsonparsing水线模型时,我需要所有这些方法。 有没有一种方法来初始化它,而不会触发数据库。 如果我可以调用user.save()也会很好。

目前还没有文档公开的API,但是你可以使用,

 var user = new PersonCollection._model(values, {showJoins: true}); 

看看这对你有用!