money rails gem,如何保存6位小数到字段

时间:2017-04-03 07:51:59

标签: ruby-on-rails currency money-rails

我有字段

monetize :unit_price_cents, as: 'unit_price', with_model_currency: :unit_price_currency

它在数据库中的类型是float。而我想在数据库中保存值保持6位小数值。在Money GEM中,我定制成功:

Money.new(1.123456).to_f => 0.01123456

我调试了一些功能,并认为gem money-rails中的问题。它在调用Money.new

之前完成

那么任何配置或自定义都可以做到这一点?代码加载宝石太疯狂了

2 个答案:

答案 0 :(得分:0)

我不完全理解你的问题。 你能把数据库格式改成十进制(12,6)吗?这允许在小数点之前有6位数,这对于每个人(tm)

应该足够了

答案 1 :(得分:0)

所以允许使用小数美分。只需将config添加到initialize / money.rb

即可
Money.infinite_precision = true

也许你想自定义Money gem的func格式以显示小数分数。