Sails.js - 如何只将模型的字段保存到数据库中?

Sails.js - how to save only model's fields into database?

假设我定义了一个模型:

module.exports = {
  attributes: {
    username: {
      type: 'string',
      required: true,
      unique: true
    }
  }
}

然后我创建一个对象,我将保存到数据库:

var obj = {
  username: 'blabla',
  score: 100,
  whatever: 'else'
}

Model.create(obj).then(...);

附加字段也将保存到数据库中。问题是——如何只保存模型中定义的字段?在这种情况下 - 用户名,即使在尝试保存所有 3 个字段时也是如此。

我以前是这样做的:

Model.create({username: obj.username}).then(...);

但我想知道是否有一种方法可以做到这一点而不必显式映射每个字段,因为它不是很容易维护,而且模型有点失去了它的目的。

试试这个:

schema: true

link 到文档:

http://sailsjs.org/documentation/concepts/models-and-orm/model-settings#?schema