我将货币值作为整数(美分)存储在数据库中,然后在视图端对其进行格式化。但是,当用户输入“175,000”之类的内容时,存储在 DB 中的值为“175”。它似乎停在第一个逗号处,而不是存储其余的零。我已经验证(使用 rubular)正则表达式正确选择任何非零或十进制值并只留下数字。我只是不确定为什么它一直停在第一个逗号处。
# model
before_save :convert_amounts_to_cents
def convert_amounts_to_cents
self.loan_amount = loan_amount.to_s.gsub(/[^0-9\.]/, "").to_i
end