在bootstrap函数中的sails.js模型验证

时间:2015-04-14 22:07:10

标签: validation model sails.js waterline

我在sails.js中有一个模型,在创建新记录之前,我想验证我想在模型中插入的数据。

这是我的模型,例如:

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

这是我在bootstrap.js中运行的代码:

  MODELNAME.validate({
    levelNumber: 10
  }, function(err){
    if (err && err.invalidAttributes) {
      console.log(err.invalidAttributes);
    } else {
      // model is valid
      console.log('validate');
    }
});

它始终返回“validate”并且永远不会在验证中返回错误!!!!

我的问题是: 1 - 在创建模型之前我们如何验证和输入模型的json?

THX

2 个答案:

答案 0 :(得分:1)

是否有理由将应用程序逻辑放入bootstrap.js?事实是在应用程序解除之前 之前执行的风帆,所以有些东西不能正常工作并不奇怪。

答案 1 :(得分:1)

您只需在 api / models

下将beforeCreate函数添加到模型定义中

您的模型将如下所示

module.exports = {
  attributes: {
     .....
  },
  beforeCreate: function(values, next) {
    // Validate the values HERE!!
  }
};