即使使用 :step,Rails number_field_tag 也不会接受浮点数

dig*_*tig 2 ruby-on-rails ruby-on-rails-4

我在表中列出了许多条目字段,其中一个条目是:

<td><%= number_field_tag :elasticity, :step => 0.1 %></td>
Run Code Online (Sandbox Code Playgroud)

当我输入非整数值(例如 1.3)并尝试发布表单时,它会弹出“请输入有效值。两个最接近的有效值是 1 和 2”。向上和向下箭头也增加 1,而不是 0.1。

正在生成的 HTML 是:

<td><input id="elasticity" name="elasticity" type="number" value="{:step=&gt;0.1}" /></td>
Run Code Online (Sandbox Code Playgroud)

所以我不明白为什么它不接受非整数值。有人可以建议我做错了什么吗?

vee*_*vee 6

的第二个参数number_field_tag是value这就是为什么你看到value="{:step=&gt;0.1}".

调用助手如下:

<td><%= number_field_tag :elasticity, nil, :step => 0.1 %></td>
Run Code Online (Sandbox Code Playgroud)