Rails number_field替代十进制值
我试图用number_field方法接受一个十进制值(USD,所以12.24就是一个例子)。
<div class="controls"> <%= f.number_field :amount, :class => 'text_field' %> </div>
这只允许我input整数值。
您可以通过为步骤选项添加Float来绕过“仅限整数”约束:
f.number_field :amount, :class => 'text_field', :step => 0.5
更新:实际上你可以使用“任何”值的步骤,它将接受所有的浮点数和整数,步骤将是1:
f.number_field :amount, class: :text_field, step: :any
价格更新:
您可以使用rails的助手number_to_currency
在number_field中显示一个价格:
f.number_field :amount, value: number_to_currency(f.object.amount.to_f, delimiter: '', unit: ''), step: :any