我如何将1作为Double猫鼬(mongodb)存储?

时间:2019-07-12 09:01:15

标签: node.js mongodb mongoose

作为标题,如何将值1存储为Double值?

我正在使用'mongoose-double'支持模式类型,但是它不起作用。

下面是示例:

const mongoose = require('mongoose');
require('mongoose-double')(mongoose);

const Double = mongoose.Schema.Types.Double;

const user = new mongoose.Schema({
  name: String,
  value: Double,
});

mongoose.model('User', user);

当我保存一个值= 1的用户

const user = new User({ name: 'Jack', value: 1 });

我在mongodb中看到typeof值= int32

当我保存一个值= 1.142的用户时

const user = new User({ name: 'Jack', value: 1.142 });

我在mongodb中进行搜索,typeof值= Double

我该如何解决?我想输入的值只有Double

1 个答案:

答案 0 :(得分:0)

我不确定您如何从中获取价值, 您可以在获取值的同时检查类型,并先将其更改/转换为双精度;否则,如果是字符串,则可以使用以下方法将您的整数更改为1.0而不是1,然后将其保存到数据库中:

yourValue.toFixed(2)