nodejs之egg-mongoose与mongodb的浮点型映射问题

mongoose的Schema

mongoose的Schema主要包括:
1.String 字符串
2.Number 数字,包括Int,float,double
3.Boolean bool
4.Array 数组
5.Buffer 二进制
6.Date 时间
7.ObjectId mongodb主键一般都是用{_id:Schema.Types.objectId}

mongodb的数据类型

1.String
2.Double
3.Int
4.Boolean

mongoose的Number与mongodb的Number类型区别

1.问题
如果mongoose的数据类型为Number,存的是浮点型例如0.3,虽然包括了浮点型,但是当映射到mongodb中时,如果为浮点型,会被强制转换为NumberInt类型,就变成了0。
2.解决办法
mongodb和mongoose的Schema都统一为String类型,然后在代码中通过Number方法自动转换。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章