有没有办法在Geddy模型中定义一个虚拟的字段?

是否可以在geddy模型中定义一个temp字段/虚拟字段?

就像我在表单中使用input字段tmpFirstNametmpLastName但是当提交时,我想将信息存储在单个列name

谢谢

这可以通过新的生命周期方法来实现(谢谢你!)。

在你的控制器中:

  this.create = function (req, resp, params) { var self = this , person = geddy.model.Person.create(params); person.firstname = params.firstname; person.lastname = params.lastname; if (!person.isValid()) { this.respondWith(person); } else { person.save(function(err, data) { if (err) { throw err; } self.respondWith(person, {status: err}); }); } }; 

在你的模型中:

  this.defineProperties({ name: {type: 'string'} }); this.beforeSave = function () { this.name = this.firstname + ' ' + this.lastname; } 

请注意,您不要声明“虚拟”属性,否则geddy会将它们存储在数据库中。