1

我有一个领域-

:Revenue

它应该接受类似的值10,000.00,但是如果我输入这样的值,它会存储10到数据库中而不是10000.00

在保存之前我应该​​怎么做才能去掉逗号?

我试图在网上找到一些解决方案,但由于我发现它们不完整而无法实施。如果有人可以帮助我,我将不胜感激。

**现在我面临的问题是,一旦我输入值 rails 将字符串转换为浮点值,然后它就可以运行 gsub 函数,例如如果我输入 50,000.00 它在调用 gsub 之前转换为浮点 50.0,有没有绕过rails在字符串上调用的to_f方法的方法。

4

3 回答 3

13

删除逗号非常简单:

value.gsub(/,/, '').to_f

请记住,欧洲格式通常使用逗号作为十进制值分隔符,因此如果处理这些数字,您的结果将相差 100 倍。

于 2013-06-27T16:44:23.110 回答
4

你可以拿一个String#delete

"10,000,000.00".delete(',').to_f 
# => 10000000.0
于 2013-06-27T17:50:31.843 回答
1

I found the solution after looking at few places and combining few solutions, since I had to use gsub before the linking to model has to be done. so I created the method in my controller and called it before create and update action. and wrote the following code in the method

params[:record][:Revenue] = params[:record][:Revenue].gsub(/,/,"")
于 2013-06-27T20:01:25.973 回答