我试图将一个整数从NodeJS更新为MongoDB集合,但是我尝试过的方式总是将整数转换为集合中的字符串。
请注意,我不能使用严格的猫鼬架构。
这是我的更新功能:
_getModel("envSettings").update(query, toUpdate , {upsert: insertIfNotFound}, function(err, docs){
_prepResponse(err, docs, callback);
});
这段代码的输入是这样的:
insertIfNotFound: false
query: {'_id':'somekey'}
这是我尝试过的各种toUpdate:
toUpdate: {$set:{value: 70}}
toUpdate: {$set:{value: parseInt(70)}}
toUpdate: {$set:{value: mongodb.Long(70).toInt()}}
将上述任何toUpdate打印到控制台时,输出始终是相同的:
{'$set':{value:70}}
我不确定如何保存字段类型?
要检查这三种变化,typeof
因为打印功能中的显示总是相同的。我个人的喜好是全部插入为字符串,并在显示数值检查时显示,如果您发现数值为数字,则进行相应处理。
同样,将所有数据存储为字符串也将有助于您进行查询。
编辑-我用第二种方法解决我的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句