今天遇到一个小错误,在测试做好的表单时,发现
登登!竟然无法显示小数点!!!
查了文件之后学到,number_field 可以加入一些参数做调整,请参阅文件1,你可以依照需求去设定最小值、最大值或者是区间值。
而目前我们的需求是设定调整值的颗粒度,因此加入step就可以做设定啰,这边设定0.5,之后调整就会以0.5为单位作调整(0.5、1、1.5、2...以此类推)。另外,时间的直不可以是负的,所以要再加上最小值,避免负值的产生~
<div class="field"> <%= form.label :service_time, '耗费时间 (单位:小时)', class: "form-label" %> <%= form.number_field :service_time,min: 0, step: 0.5, class: "form-control" %></div>
若是不想限制,也可以设定为 any 喔。
<div class="field"> <%= form.label :service_time, '耗费时间 (单位:小时)', class: "form-label" %> <%= form.number_field :service_time,min: 0, step: :any, class: "form-control" %></div>
参考资料:文件1、文件2