我正在开发一个非常基本的购物车系统
我有一个表items,其中有一列price,类型为integer
对于同时包含欧元和美分的价格,我在视图中显示价格值时遇到问题。就在Rails框架中处理货币而言,我是否遗漏了一些显而易见的东西
您可能希望在数据库中使用DECIMAL类型。在迁移过程中,执行以下操作:
#精度是总位数
#刻度是小数点右侧的位数
添加列:项目,:价格,:小数,:精度=>;8,:比例=>;2.
在Rails中,:decimal类型返回为BigDecimal,这对于价格计算非常有用
如果你坚持使用整数,你将不得不在任何地方手动转换成和转换成BigDecimals,这可能只是一个麻烦
正如mcl所指出的,要打印价格,请使用:
数字到货币(价格:单位=>;“€”)
#=>;€1,234.01