Sailsjs / waterline指定模型中的小数位数

时间:2014-10-28 19:57:36

标签: sails.js waterline

如何告诉我的sails模型我想要一个type: 'float'属性的特定小数位?像decimalPlaces: 4或类似的东西?

问题在于,当我向此条目发布值时,磁盘上的值将被截断为.00(数百)个位置。说我想:3243.2352362就像它一样存储。目前,这已转换为3243.24

如果重要的话我正在使用sails-mysql适配器。

2 个答案:

答案 0 :(得分:3)

  types: {
    decimal2: function(number){
      return ((number *100)%1 === 0);
    }
  },
  attributes: {
    myNumber: {
      type: 'float',
      decimal2: true
    }
  }

这是2位小数。我无法找到一种方法来动态更改N,因为没有办法将参数传递给自定义验证。 此问题的解决方法是检查beforeValidation()函数中的自定义小数位数。

答案 1 :(得分:1)

我不建议(我不认为float可能)在模型中添加约束。

我建议您设置:

  

迁移:"安全"

在模型中

并在表格中设置相应的数据类型/小数位。