Meteor mongo保存/插入号码将转换为字符串

时间:2016-12-16 12:23:23

标签: string mongodb meteor insert converter

我刚注意到,只要使用预定义变量在MongoDB中保存任何内容,数据类型就会从Number和Boolean更改为String

Orders = new Mongo.Collection("Orders");
Orders.update({_id:"12345"},{$set:{price:5.5}) //this works

var price = {price: 5.5};
Orders.update({_id:"12345"},{$set:price}); //this is not working anymore in the mongo collection price is saved as String "5.5" not as a number, same goes for Boolean values

最近有什么人可以帮助我吗?更改整个应用程序以使用第一种方法不是解决方案,因为我的代码生成了数千个更新,之前完美运行。

1 个答案:

答案 0 :(得分:0)

在声明变量时可以尝试这个:

var price = {price: Number(5.5)};
Orders.update({_id:"12345"},{$set:price});

通过这种方式,我认为它确保5.5在尝试更新相关数据时确实是一个数字。对于布尔值,您可以使用Boolean(true),我猜