如何转换剩余的Decimal128值

问题描述 投票:0回答:1

我将Mongoose用作软件包的一部分,节省了大量时间。

我正在使用的程序包是https://github.com/florianholzapfel/express-restify-mongoose。当我查询Mongodb,并且我有一个Decimal128类型时,它将返回如下所示的值:

{
    "sku": "shGHYB12-60-LOZ",
    "name": "Prd",
    "size": "60",
    "buyPrice": {
        "$numberDecimal": "12.55"
    }
}

这在Mongoose对象中很好,但是当我在Rest API上公开它(此包使用restify)时,它只是一个json表示形式。

[如果我在Patch或Put请求中通过REST Api将其发布回-就像一个字符串或数字(请参见下文),它可以正常工作,并将其存储在数据库中,并使用Mongoose模型正确翻译。

{
    "sku": "shGHYB12-60-LOZ",
    "name": "Prd",
    "size": "60",
    "buyPrice": "12.5995"
}

我的猫鼬模型的一部分是这样的

"buyPrice": {
    "type": "Decimal"
}

我如何在MongoDb中将其存储为十进制类型,但通过REST将其公开为数字?我只是不确定如何去做。

我猜可能发生的3个领域是>>

  1. 猫鼬模型
  2. 重新整理
  3. 猫鼬中的某种“钩子”。
  4. 我也不是太过熟悉。谢谢您的时间。

我将Mongoose用作软件包的一部分,节省了大量时间。我使用的软件包是https://github.com/florianholzapfel/express-restify-mongoose。当我查询Mongodb时,我有一个Decimal128 ...

node.js mongodb mongoose mongoose-schema restify
1个回答
0
投票

在声明模式之前,请创建一个辅助函数:

© www.soinside.com 2019 - 2024. All rights reserved.