【发布时间】:2017-12-16 12:51:47
【问题描述】:
我正在尝试使用浮点数作为 mongodb 数据库中的键,因为我必须存储每个货币值的相应数量(例如 0.01:10)。但是当我尝试通过 mongoose(使用 express 的节点服务器)保存数据时,它只会使用数据库中的普通(字符串)键保存数据。
这是我的架构:
var ProtokollSchema = new Schema({
"date": String,
"0.01": {type: Number, default: 0},
"0.02": {type: Number, default: 0},
"0.05": {type: Number, default: 0},
"0.10": {type: Number, default: 0},
"0.20": {type: Number, default: 0},
"0.50": {type: Number, default: 0},
"1.00": {type: Number, default: 0},
"2.00": {type: Number, default: 0},
...
});
这是设置数据的快速函数:
.post(function(req, res) {
var protokoll = new ProtokollSchema();
protokoll["date"] = req.body["date"];
protokoll["0.01"] = req.body.data["0.01"];
protokoll["0.02"] = req.body.data["0.02"];
protokoll["0.05"] = req.body.data["0.05"];
protokoll["0.10"] = req.body.data["0.10"];
protokoll["0.20"] = req.body.data["0.20"];
protokoll["0.50"] = req.body.data["0.50"];
protokoll["1.00"] = req.body.data["1.00"];
protokoll["2.00"] = req.body.data["2.00"];
...
protokoll.save(function(err) {
if (err) res.json(err);
res.json({ message: "Comment successfully added!"});
});
})
是否有解决方案,或者只是不可能做到?
【问题讨论】:
标签: javascript mongodb mongoose floating-point mongoose-schema