1
我知道这是一个非常基本的问题,但我很难找到在rails应用程序中执行此操作的标准/最佳方式。这看起来像是一个非常典型的问题,我确信有一个很好的方法来解决这个问题。将用户提供的字符串转换为数字
这是问题所在。我有一个客户端模型与“estimated_worth”十进制列:
client = Client.new
client.estimated_worth = "2,000"
client.estimated_worth
=> 2
显然,这是不好的。我也看到了这有时会:
client = Client.new
client.estimated_worth = "2 thousand"
client.estimated_worth
=> 2
有一个很好的方式在轨道来处理这个,我很想念?基本上,我正在寻找类似Time.parse()的东西,但是对于数字。
在此先感谢。
是的,我可以做到这一点,看起来很不友善。我必须想象有一个优雅的解决方案来处理用户提供的号码。这似乎更加红宝石。 –
哦,是的,可能有更多的rubyesque做法,但鉴于您正在验证用户输入,在我脑海中完成它的逻辑位置将在表单本身。例如,如果用户输入2.000,则希望将其视为两千。你会如何处理整数与浮点数?如果有人输入2000.50会怎么样?你可以避开所有这些,只是在它打到你的应用程序之前过滤出非数字文本..我不确定你的意思是用户不友好的,但是? – FiveOhOne
不,我认为你的建议很好,可能我最终会做的。我只是希望尽可能使流程顺利进行。没有什么比填写表格更烦人,然后必须纠正技术上正确的值。例如:当一个网站以特定格式需要我的电话号码时。如果可能,我想尽量避免。 –