0

当我在表单中输入 3.50 的价格时,rails 将其作为 3.5 保存到数据库中,但是当我输入任何末尾没有零的东西(如 3.51)时,它会将其保存为 3.51。如果输入 3.50,我需要将 3.50 作为 json 返回。

在我的简单形式中,我使用它作为输入

<%= f.input :price, :value => number_to_currency(f.object.price, :precision => 2) %>

Schema

 t.decimal  "price",              :precision => 10, :scale => 2

关于为什么零下降的任何想法?

4

2 回答 2

1

因为 0 不重要。它与轨道无关。在控制台输入3.50,它会返回3.5. 3.50只是您号码的字符串表示形式。当它转换为浮点数时,没有任何意义 0。

为什么要3.50才能退?另一种方法是在创建 json 时自己添加它。

于 2013-03-13T19:49:15.080 回答
1

只要将数字存储为数字,大多数数据库都会将其保持为最简单的数字。一旦数字变成字符串,就需要确保任何前导或尾随零。

于 2013-03-13T19:49:51.047 回答